NEWS
javascript.0 bricht ab
-
@digi-bit sagte: das mit dem Expert im Javascript-adapter finde ich nicht
Im Javascript-Editor der Kopf (4. Symbol oben):

Den Expertenmodus muss man aktivieren, wenn man die Gruppe "global" auswählen möchte.
-
-
Mache mal den script mirror aus.
EDIT: ich sehe das der Adapter auf debug steht - gib mal das Log von einem Restart bis zum Absturz - aber bitte aus dem Download-Log.
-
-
@digi-bit
javascript-adapter
Ich meine das log von da:

-
Hallo,
Hat etwas gedauert aber ich muss was tun um Leben zu können wie die meisten denke ich mal ^^
Hier das log:
Jetzt bin ich ja mal gespannt .....
mfg
Digi-Bit
-
@digi-bit für was soll das sein?
javascript.0 (43084) Schedule restart: 1 3 * * * -
@digi-bit
Das da ist aber mit allen Skripten am laufen, ich wollte das log mit ausgeschalteten skripten.Der Heap läuft über - bedeutet, das du entweder endlos Daten hinzufügst oder mit zu großen Datenmengen arbeitest. Das dürfe ohne aktivierte Skripte nicht passieren. Deshalb will ich das log mit ausgeschalteten Skripten sehen.
-
@crunchip sagte in javascript.0 bricht ab:
@digi-bit für was soll das sein?
javascript.0 (43084) Schedule restart: 1 3 * * *das weis ich auch nicht, ich weis nur das um 3 Uhr schon seit der ersten IOB Installation die Skripte neu starten.
mfg
Digi-Bit
-
@ticaki sagte in javascript.0 bricht ab:
@digi-bit
Das da ist aber mit allen Skripten am laufen, ich wollte das log mit ausgeschalteten skripten.Der Heap läuft über - bedeutet, das du entweder endlos Daten hinzufügst oder mit zu großen Datenmengen arbeitest. Das dürfe ohne aktivierte Skripte nicht passieren. Deshalb will ich das log mit ausgeschalteten Skripten sehen.
mit Ausgeschalteten Skripten rannst der Adapter aber nicht ab, glaub ich, nur das da irgendwelche in und Output's angezeigt werden.
Aber werde ich Morgen dann mal für eine weile mit Abgeschalteten Skripten laufen lassen für eins 2 Stunden mal sehen was passiert.
mfg
Digi-Bit
-
@digi-bit sagte: irgendwelche in und Output's angezeigt werden.
Das passiert auch ohne laufende Skripte, da die Javascript-Instanz alle Zustände abonniert, also der JS-Puffer ständig synchronisiert wird.
-
@digi-bit
Dann hab ich das falsch verstanden sorry - dann mußt du die Skripte durchprobieren - geht am schnellsten wenn du 50% an machst, wenns stabil läuft ist das problem in der anderen hälfte und das solange bist du es weißt
-
Wie viele Datenpunkte hast du den insgesamt?
und gibt es da viele, die sehr oft aktualisiert werden?ok, gefunden
Objects and States
Please stand by - This may take a while
Objects: 83729
States: 74561ist auch nicht übermäßig viel, ausser du speicherst binär daten in den datenpunkten, aber das würde glaube ich den heap nicht betreffen.
heap überlauf kommt meist von rekursiv aufgerufenen funktionen die kein endebegrenzer haben oder falsch programmierte event oder timer handler (was wieder memmory leaks erzeugt, die nicht aufgeräumt werden können)
daher so wie geschrieben erstmal den adapter ohne skripte starten. dann dürfte das nicht mehr passieren.
dann der reihe nach die skripte starten und jeweils eine weile warten.
bewährte methode ist bei bspw 20 skripte
zunächst 10 anschalten und dann eine weile warten (1-2h bzw je nachdem wie schnell sich das problem nach neustart bei dir aufgebaut hat)
dann nach der wartezeit, weitere 50%, also 5 dazuschalten und so fort. wenn du ein segment an skripten gefunden hast was verrückt gespielt hat, dann nur das aktivieren und der reihe nach durchprobieren (wenn es immer noch sehr viele im segment sind, dann wieder die jeweils 50% methode anwenden, da es bei einzelnem zuschalten dann doch länger dauern kann, bis das böse skript identifiziert ist.ist das problem schon immer oder "plötzlich" nach einem update oder nachdem du skripte bearbeitet hast?
problem ist auch, wenn der speicherzuwachs relativ langsam vorsich geht, dauert es auch länger wenn viele skripte abgeschaltet sind, da ja dann mehr speicher frei ist und es daher erst später zum problem kommt.
-
@oliverio sagte in javascript.0 bricht ab:
oder falsch programmierte event oder timer handler
Ja - z.B. der Kandidat #1: Trigger in Trigger
-
@oliverio sagte in javascript.0 bricht ab:
heap überlauf kommt meist von rekursiv aufgerufenen funktionen die kein endebegrenzer haben
Wenn ich nicht falsch liege ergibt das zumindest einen Stackoverflow - beim trigger in trigger hab ich keine Ahnung, das hab ich noch nie falsch gemacht... sowas sollte man nie schreiben

-
Hallo,
So nach langem suchen und Skripte Abschalten habe ich den Fehler endlich gefunden .........
Ne, trigger in trigger war es nicht.....!
Es war eine "SCHLEIFE" die ins Nevada geführt hat.
Ich bedanke mich für die Hilfe, ich hatte ja irgend wie zum Anfang gar kein Ansatz punkt wo man suchen muss.....
D A N K E !
MFG
Digi-Bit
-
@digi-bit sagte in javascript.0 bricht ab:
die ins Nevada geführt hat
<besserwissermode>
Das Ding heißt "Nirvana"
</besserwissermode>
