Out of memory

Hallo, seit ca. 14 Tagen kriege ich den Out of Memory Fehler im IPS.
SOAP #2: Thread creation error: Für diesen Befehl ist nicht genügend Speicher verfügbar
Ich habe die Version 3.1 installiert, die auch ca. 4 Wochen einwandfrei lief.
Ich habe schon alle Variablen im Archive-Handler gelöscht.
Es läuft kein Webfront.
Die Meldungen habe ich auf das notwendigste reduziert.
Ich boote den Rechner (3 Gbyte Speicher Win 7 prof 32 bit) jeden Morgen gegen 04:00 Uhr und trotzdem schmiert mir IPS mindestens einmal täglich ab. - so nach 8-9 Std.
In beiliegender Tabelle habe ich einmal den Speicherverlauf festgehalten.
Ich habe SOAP aktiviert, weil ich mit der TRIXI.DLL von Tony arbeite.

IPS braucht immer mehr Speicher - die Prozessorlast liegt durchgängig bei 20%.

IPS-Fehler.txt (2.58 KB)

So ein Verhalten hast du z.B. wenn du in Scripten Dateioperationen durchführst und das Filehandle nicht korrekt schließt.

In der Richtung würde ich suchen ;).


MfG
Ralf

Hallo Ralf,
der Tip wurde hier im Forum schon mal gegeben und ich habe das als erstes geprüft. Negativ:confused:

Tja, leider wird dieses Thema nicht sehr ernst genommen oder es betrifft nur wenige.
In diesem Thread http://www.ip-symcon.de/forum/threads/23675-Zugriff-auf-IPS-Meldungen-Log-von-Script habe ich das Problem bereits geschildert.
Die auslösenden Scripte sind aber teilweise so einfach, dass es das nicht sein kann. Da muss ein Problem in IPS lauern, welches nicht einfach durch schlechte Scripte erklärt werden kann. Der Aufschrei über meine Anfrage war ja dann auch grösser als die konkrete Hilfe… :wink:

Naja, ich nutze IPS jetzt seit 8 Jahren im 7x24 Betrieb, seit sehr langer Zeit immer die aktuelleste (Alpha)/Beta-Version im Produktivbetrieb.

Speicherprobleme gab es bei mir immer nur aufgrund der Dateioperationen bzw. entsprechender fehlerhafter PHP Funktionen. Oder durch „unglücklich“ gesetzte Events oder Scripte, die sich selber überholt haben (Parallelaufrufe).

Nur weil ich in den letzten 3 Jahren keinen Bluescreen mit Windows XP hatte heisst es ja nicht, dass jeder der einen hatte selber schuld ist… :slight_smile:

Und ja, IPS ist eine grandiose Sache

Die Parallelaufrufe würden mich interessieren?

Wenn du ein Script durch ein Event triggerst, dann läuft es :). Wenn es „etwas“ länger läuft und noch einmal getriggert wird, dann läuft es zweimal parallel.

Das kann man weitgehend vermeiden, wenn die Scripte nur kurz laufen bzw. man sich über seine Trigger im klaren ist oder durch Verwenung von Semaphoren.

Spannender Ansatz. Ich muss aber nicht grundsätzlich verhindern dass ein Script zweimal gestartet wird sondern nur, wenn der Inhalt sich selbst behindern könnte oder?

Genau, gleichzeitiges Lesen (je nach Quelle) oder gleichzeitiges Schreiben, z.B. in Dateien führt mit hoher Wahrscheinlichkeit zu Problemen.

Falls also ein Script in eine Datei schreibt und parallel noch einmal angetriggert wird, bekommt der zweite Aufruf ein Problem bei Öffnen der (gleichen) Datei.
Das kann auch beim Schreiben von eigenen Logdateien oder temporären Dateien, z.B. beim Herunterladen aus dem Netz und lokal speichern, zu Fehlern führen.