Was bedeutet "DEBUG Archive Control Writing negative record size for variable"?

Hallo,

nach einem Upgrade von 3.1 (!) auf: IP-Symcon 4.4, Windows x86, 16.12.2017, 0ce24b1b3093

bekomme ich jetzt obige Fehlermeldung im Log. Die referenzierte Variable ist ein OneWire Temperatur-Sensor.

Gruß

Stephan

Hattest du nach dem Update alle Variablen neu aggregiert?

Wir haben im Archiv noch einen seltenen Fehler, dass die Anzahl/Größe der Daten manchmal falsch als negativer Wert dargestellt wird. Und dafür haben wir ein paar Debug ausgaben hinzugefügt.

paresy

Hallo,

ich habe die Variablen aggregiert, danach war einige Zeit Ruhe. Jetzt kommen die Meldungen wieder. Im Archive Handler steht auch eine negative Größe.

Stephan

die Anzahl der Variablen mit diesem Verhalten wird immer größer. Aggregieren hilft nur für ein paar Tage…

Was kann ich tun?

Stephan

Wir konnten das bisher leider nicht reproduzieren. Kannst du das Verhalten vielleicht genauer beschreiben? Wie verläuft das ganze, sinkt die Größe gleichmäßig bis sie schließlich die Grenze ins negative überschreitet? Oder kommt ein einmaliger „Sprung“? Hast du mal ins Log geschaut, ob ums Sinken des Werte irgendwelche interessanten Einträge da sind?

Ich bin nicht der OP, aber habe ebenfalls diese negative Größen bei häufig aktualisierten Meßwerten.
Die Größe sinkt auch nicht, sondern das ist ein Überlauf bei sehr großen Werten, dann geht es sprunghaft in’s Negative.

Der Fehler tritt nicht spontan auf, sondern entwickelt sich bei allen meinen Variablen kontinuierlich:

Eine Variable, die direkt nach der Aggregation bei

107.321 Einträgen 1,6 MB groß ist, hat bei
107.888 Einträgen schon 26,7 MB

Bei diesem rasanten Wachstum läuft dann relativ bald der Zähler über und es werden negative Werte angezeigt.

Diesen Effekt zeigen alle meine Archiv-Variablen. Ich habe auch welche, die haben über 3Mio Einträge.

Gruß

Stephan

Fehler tritt bei mir ebenfalls auf. Reaggregation wurde seit 4.4. Migration schon mehrmals durchgeführt.
In meinem Fall handelt es sich um Logging von Stromzählern.
wenn ich zur Fehleranalyse etwas beitragen kann, dann bitte um Nachricht.

push…

Bei mir das gleiche Problem, 8-15 Variablen von 236 sind aktuell betroffen, es ist aber keine Logik erkennbar, weder Anzahl Datensätze noch Zeitraum, teilweise werden im Log auch Variablen angezeigt, die im Archivhändler keine negative Größe haben. Der Archivehandler und alle Graphen funktionieren ohne Probleme.

Gruß Thomas

Hallo Support,

was muss man tun, damit sich diesen Fehler jemand ansieht?

Gruß

Stephan

Wir suchen das Problem leider schon etwas länger und bisher haben wir keinerlei Idee/Hinweis wann der Fehler exakt passiert. Bisher konnte uns auch niemand ein Muster sagen, wann der Fehler auftritt oder gar reproduzierbar macht. Hast du dazu irgendwelche Hinweise?

paresy

Hallo
Hier ein paar weitere Hinweise, evtl. hilft es ja bei der Ursachenfindung.

  • es sind alle arten von Variablen Betroffen (String, Integer,Float)
  • alle betroffenen Variablen zeigen im Archivehandler abnormal hohe negative Werte
  • aktuell sind nur Variablen betroffen welche in IPS berechnet werden.
  • im Moment sind vorwiegend Variablen betroffen welche in parallel laufenden Scripten berechnet werden.

->-> Das bringt mich zur Vermutung, das evtl der Archivehandler ein Problem bekommt wenn Variablen zum exakt gleichen Zeitpunkt ins geschrieben werden sollen. Kann das sein ?

Schaut mal:
Alle Variablenupdates aus PV/xxxxx werden durch einen Event getriggert und quasi zur gleichen Zeit in verschiedenen Scripten berechnet.

Die Variablen mit Präfix Server/xxxxx stammen alle aus dem gleichen Script (also hintereinander upgedated) da sie aber den gleichen Timestamp haben sind sie vielleicht mal mit einer anderen kollidiert und dann hats auch die zerlegt.

gruß
bb

Hallo Paresy,

ich kann das beliebig reproduzieren:

  • Aggregieren: alles sieht gut aus.
  • Daten hinzufügen: Archiv wird wieder inkonsistent

Ich könnte meine Archiv Files bereitstellen.

Stephan

Heute ist mir dazu auch noch folgendes aufgefallen.
Wenn man die Variablen nach Groesse sortiert sind am Anfang die
negativen Werte. Aber am Ende der Liste befinden sich auch wieder einige negative Werte.
Diese sind aber auch schoen sortiert nach Groesse.:confused:

Unbenannt.png

Immerhin sind die falsch berechneten Größen incl. negativer Werte in der Webkonsole identisch falsch. :o

Nach Aggregation sehen die Werte erstmal glaubhafter aus (habe nicht geprüft ob sie stimmen, aber die falschen, extremen Dateigrößen reduzieren sich deutlich) und innerhalb von ein paar Wochen laufen die angezeigten Größenwerte dann wieder aus dem Ruder. Kann doch nicht so schwer sein, den Fehler endlich mal zu reparieren?

Leider ist es so schwer… wir wissen einfach nicht, wann und wie er passiert. Nur, dass er irgendwann bei vielen passiert. Die Anzeige nach der Aggregation ist nicht 100% die Größe auf der Festplatte - aber nah genug dran für eine gute Übersicht.

paresy

Gibt es vielleicht die Moeglichkeit die Meldung
„Writing negative record size for variable 28883“
erweitern durch alten positiven Wert und neuen negativen Wert?
„Writing negative record size for variable 28883 from OLD to NEW“
Dann haette man schon eine Uhrzeit und den ersten falschen negativen Wert.