settings.XML wird immer zerstört

Hallo Leute,

seid 2 Tagen habe ich das Problem, das der IPS-Rechner alle 5 Min. immer für ca. 1Min. auf 100% CPU Last steht und dann nichts mehr geht.
Das Runterfahren dauert sehr lange und jedes Mal ist die Settings.xml korrupt bei nur 1kb die ursprünglich 250kb hatte.
Also alte Setings drauf und wieder von vorne suchen. Ich bin davon ausgegangen, das hier ein Script dafür verantwortlich ist, das alle 5 Min. getriggert wird und habe deshalb alle diese Scripts deaktiviert, ohne Erfolg.

Nach nun nächtelangen ausprobierens und neustartens habe ich festgestellt, das diese hohe CPU-Last immer beim Schreiben der Settings.xml auftritt. Dabei wird diese dann auch direkt ca.950kb groß und beim Runterfahren von IPS ist diese dann korrupt bei nur 1kb.

Hat jemand eine Idee was das sein kann und wie ich das lösen kann?

Grüße,
Doc

Hallo Doc,

ich vermute mal, dass Du mit Sicherheit im IPS Stringvariablen drin hast. Schau mal dort nach, ob da eine uebermaessig gefuellt ist oder Binaerzeichen enthaellt. Am besten die mal auf „leer“ setzen und dann mal testen. Das duerfte mit grosser Wahrscheinlichkeit Dein Problem sein.

Hallo Torro,

danke für die Antwort.

Habe vorhin mal einen Dateivergleich 2er Settings laufen lassen, ein gutes und ein extrem großes, und dabei gesehen, das die Wetterdaten aus dem WWW-Reader hier einiges abgelegt haben. Habe jetzt mal die betreffenden Scripts deaktiviert und teste gerade mal.
Ich hoffe auch, das es nur das ist, hat mich jetzt schon Stunden gekostet, der Sache auf den Grund zu gehen.

Werde später berichten, ob es das war.

Danke,
Doc

Es hat in der Tat an den String-Variablen gelegen.

Das Wetter Script hat unzählige Variablen mit Wetterdatenmüll aus dem I-Net gefüllt.
Beim Beenden hat verm. das Speichern der Settings länger gedauert, als das beenden von IPS wodurch immer die Settings zerstört wurden auf meinem kleinen Rechner.

Kann man da keine Begrenzung einstellen für die String-Variablen? Oder irgenwie anders abfangen?

Grüße,
Doc

Hallo Doc,

ich benutze das EventHandler Addin und mache entsprechene Variablen über ein Script beim Shutdown einfach leer.

Das nützt nur leider nicht bei kleinen Rechnern, wenn die Settings.xml wärend des Betriebes schon sehr gross wird und beim regelmäßigen speichern immer der Rechner fast stehen bleibt.
Kann man die größe der String-Variablen nicht irgendwie festlegen?

Doc

Das liegt weniger an der Größe als an der Tatsache, das die entsprechende Routine zum Abspeichern der settings.xml keine Konvertierung in einen „XML-unschädlichen“ Dateninhalt durchführt. Damit gab es schon mehrfach Probleme (siehe Forumssuche nach settings.xml).Ich bin der Meinung, dass das eine Aufgabe der internen Routine sein sollte und nicht die Aufgabe des Bedieners, vorher seine Variablen Aufzuräumen. Bei einer derartig grossen Auswahl an hardwarenahen Interfaces (ComPort, FTDI usw.) sind Binärdaten in Variablen eben nicht auszuschliessen. Die Speicherung in XML war schliesslich eine auch die Entscheidung der Entwicklung. Es ist aber definitiv kein Akt, mit einer gängigen Bibliothek so eine Konvertierung vor dem Abspeichern einzubauen. Dann hört auch unser „Gemecker“ auf. :stuck_out_tongue:

Tommi