dsmrreader / dsmr-reader

DSMR-telegram reader & data visualizer for hobbyists. Free for non-commercial use.
https://dsmr-reader.readthedocs.io
Other
459 stars 95 forks source link

Probleem met PostgreSQL database🙋 #1899

Closed killabeenl closed 10 months ago

killabeenl commented 10 months ago

Description

Hallo,

Ik draai al een tijdje DSMR reader vanuit een Homeassistant addon samen met de TimescaleDB addon voor de PostgreSQL database. Nu heb sinds een aantal dagen deze meldingen in DSMR reader in de logging.

_on_dsmrreading_created_signal 159 | publish_split_topic_meter_statistics() failed: integer out of range

Dit begon op te vallen omdat de MQTT sensoren niet meer werden geupdate. Dus ik heb geen info meer van DSMR in Homeassistant. Nu lijkt DSMR Reader verder wel te werken echter het maken van Backups lukt ook niet meer.

Ik heb de retentie settings aangepast en ook een VacuumDB uitgevoerd zoals vermeld in de handleiding. Echter lost dit nog niets op.

Kan iemand mij hier bij ondersteunen.

Alvast bedankt

DSMR-reader version

v5.10.3

DSMR-reader platform

Docker (e.g. Xirixiz)

Debug info dump

No response

killabeenl commented 10 months ago

Nog even een aanvulling. Dit zie ik ook voorbij komen in de logging:

pg_dump: error: server version: 15.3; pg_dump version: 14.5 pg_dump: error: aborting because of server version mismatch

dennissiemensma commented 10 months ago

Ik kan je momenteel niet helpen, omdat ik in het buitenland zit.

killabeenl commented 10 months ago

Hallo Dennis,

Ik heb inmiddels het probleem kunnen oplossen. Als je zoekt op de foutmelding dan kom je tegen dat een Integer veld niet meer dan 2147483496 kan hebben. Dat klonk voor mij heel veel dus ik geloofde daar niet zo in.

Maar nu kwam ik er achter dat de foutmelding kwam bij de tabel: dsmr_mqtt_message

Als je daar een query op los laat: SELECT id FROM dsmr_mqtt_message ORDER BY 1 DESC LIMIT 1; Dan zou je het aantal ID's moeten zien. Die kreeg ik niet te zien. Ik dacht dan is dat het probleem niet. Voor de test heb ik toen het ID veld omgezet naar een: bigint Dit werd als oplossing geboden op meerdere websites met vergelijkbare problemen Daarna heb ik opnieuw dezelfde query gedraaid en kreeg ik het magische getal: 2147483496 te zien. Dus het veld ID in de tabel dsmr_mqtt_message had dus inderdaad te veel regels.

Nu ik het heb omgezet werkt MQTT weer naar behoren en krijg ik weer data in Homeassistant.

Ik draai al een tijdje met DSMR dus wellicht is dit nog iets van eerder en is de database opzet nu anders. Ik ga de andere tabellen ook langs lopen om te kijken of dit probleem bij nog meer speelt.

dennissiemensma commented 10 months ago

Dank voor je update!