Hallo setstate,
bei mir stellt es sich nach der letzten Änderung so dar, dass anscheinend nach dem erst Eintreten
currLine = lines.length;
ftui.toast("Lines: "+currLine);
if (currLine>1024){
ftui.states.longPollRestart=true;
longPoll(room)
}
alle 10-15 Sekunden
Toasts:
Disconnected
retry to connect in 10 sec
longpoll started
kommt.
Hast Du eine Idee oder ist das normal?
Das klingt nicht gut. Dann wird longPoll mehrfach gestartet und eine Seesion davon wird abgebrochen und startet dann neu. Das wird dann zu einer Endlosschleife.
Wenn das durch Refresh/Cache löschen bei dir nicht besser wird, musst du die u.g. Zeilen erst einmal wieder auskommentieren.
Ich habe extra gestern bei mir getestet und es für okay empfunden. Kann man noch was zur genauen Herleitung sagen? Machst du noch spezielle Sachen, bevor das Problem auftaucht?
Hallo,
Refresh löst es dahingehend, dass es wieder einmalig 1024 Zeilen dauert und dann erneut auftritt.
Nach 1024 Zeilen kommt im debuglog:
2016-02-06 10:08:16 / DG_SPS / HZ_Rueck / 37.9
VM2007:43 label value 37.9 substitution
fhem-tablet-ui.js:69 update done for device:DG_SPS parameter:HZ_Rueck
fhem-tablet-ui.js:166 Longpoll started
fhem-tablet-ui.js:166 Error while longpoll: error:
fhem-tablet-ui.js:474 2016-02-06 10:08:17 / DG_SPS / pAct / 688
Anscheinend kommt kein "errorThrown" an dieser Stelle.
Mmmm? Fehler Ursache wäre schon interessant und hilfreich! Vllt. braucht das Abort bei dir länger und man müsste etwas warten bis zum Neustart. Dann verliert man aber einige Nachrichten.
kann ich denn feststellen, ob "longPollRequest.abort();" beendet ist?
Oder kann ich nach abort testen ob es zu fehlern kam?
Ich habe mal nach abort longPollRequest.statusText ausgegeben - dort steht auch nur "error" drin :(
Ich glaube das Problem ist, dass an der Stelle ">1024" gleich der lonpoll() aufgerufen wird.
Im longpoll kommt dann der abort und es wird neu gestartet - aber der alte request landet ja ??? wegen dem abort ??? beim dem ajax-Aufruf im fail und startet auch den longpoll nach 10 Sekunden neu.
---- Glaub ich --- Kenn mich nicht wirklich aus!!!
So hab ich das jetzt bei mir am laufen (>50 wegen Testen):
......
currLine = lines.length;
ftui.toast("Lines: "+currLine);
if (currLine>50){
ftui.states.longPollRestart=true;
//longPoll(room);
longPollRequest.abort();
}
}
}, false);
return xhr;
}
})
.done ( function( data ) {
if (!ftui.states.longPollRestart){
ftui.log(1,"Disconnected from FHEM - poll done - "+data);
ftui.restartLongPoll();
}
})
.fail (function(jqXHR, textStatus, errorThrown) {
if(!ftui.states.longPollRestart){
ftui.log(1,"Error while longpoll: " + textStatus + ": " + errorThrown.name +":"+longPollRequest.statusText);
ftui.restartLongPoll();
}
else {
longPoll();}
});
Schau bitte mal drüber ob das so überhaupt richtig ist!
Danke für die Hilfe
Gruß
Michael
mmm, ich kann nicht testen die nächsten Stunden, aber sieht nicht falsch aus. Funktioniert longpoll nach 50 Zeilen dann wieder, ohne Fehlerfdauerschleife?
Ja, bei mir läuft es "unauffällig". Immer schön alle ~50 Zeilen ein restart.
Ich kann nicht beurteilen, ob durch dieses handling Events verloren gehen. Da reicht mein Durchblick nicht.
Aber da der Longpoll recht schnell wieder neu gestartet wird, dürfte nicht viel verloren gehen.
Habe Test mit >1024 in WVC und im Chrome (PC) am laufen.
Hallo,
ich habe heute ein FTUI Update durchgeführt und erhalte nach einiger Zeit (ca. 60min) ebenfalls alle 10 Sekunden die TOAST-Fehlermeldungen:
Disconnected from FHEM
Retry to connect in 10 seconds
Longpoll started
Der Code scheint neu hinzugekommen zu sein, in der alten fhem-tablet-ui.js konnte ich diesen nicht lokalisieren.
Viele Grüße,
ambiman
Bei mir ist über Nacht alles durchgelaufen.
@setstate: Ich habe gesehen, du hast eine Änderung gemacht, danke.
Gruß
Michael
Nach der Änderung sind die Meldung bei mir ebenfalls verschwunden.