Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Error/Bug
    4. Storage Vorhaltezeit in mySQL funktioniert nicht - hat keinen Einfluss

    NEWS

    • Neuer Blog: Fotos und Eindrücke aus Solingen

    • ioBroker@Smart Living Forum Solingen, 14.06. - Agenda added

    • ioBroker goes Matter ... Matter Adapter in Stable

    Storage Vorhaltezeit in mySQL funktioniert nicht - hat keinen Einfluss

    This topic has been deleted. Only users with topic management privileges can see it.
    • T
      tp1de last edited by

      Hallo,

      ich habe seit einiger Zeit den SQL-Adapter mit mySQL am laufen. Pro Tag schreibe ich ca. 30.000 Sätze.

      Alles funktioniert soweit super performant auf dem PI3.

      Ich habe als Storage Vorhaltezeit bei allen Datenpunkten 1 Woche eingestellt.

      Der Wert hat aber keine Auswirkung. Ein Löschen der alten Sätze findet nicht statt. Aktuell habe ich mehr als 2 Mio Einträge.

      Ist das nur mein Problem, oder habt Ihr ähnliche Erfahrungen?

      Hat jemand eventuell bereits ein Script zur Reorganisation der Datenbank geschrieben?

      Grüße

      Thomas

      1 Reply Last reply Reply Quote 0
      • Bluefox
        Bluefox last edited by

        @tom57:

        Hallo,

        ich habe seit einiger Zeit den SQL-Adapter mit mySQL am laufen. Pro Tag schreibe ich ca. 30.000 Sätze.

        Alles funktioniert soweit super performant auf dem PI3.

        Ich habe als Storage Vorhaltezeit bei allen Datenpunkten 1 Woche eingestellt.

        Der Wert hat aber keine Auswirkung. Ein Löschen der alten Sätze findet nicht statt. Aktuell habe ich mehr als 2 Mio Einträge.

        Ist das nur mein Problem, oder habt Ihr ähnliche Erfahrungen?

        Hat jemand eventuell bereits ein Script zur Reorganisation der Datenbank geschrieben?

        Grüße

        Thomas `
        Es kann sein, dass es an dieser Stelle ein Fehler drin ist.

        Wenn du jetzt die Zeile 33 in die Datei /opt/iobroker/node-modules/iobroker.sql/lib/mysql.js so änderst:

            query += " AND ts < " + Math.round(d.getTime() / 1000);
        

        auf

            query += " AND ts < " + d.getTime();
        

        Nach dem sql-Adapter-Restart sollte es besser aussehen.

        1 Reply Last reply Reply Quote 0
        • T
          tp1de last edited by

          Update:

          Die Änderung funktioniert. Beim Neustart des SQL-Adapters werden die alten Daten gelöscht. 😄

          Wann läuft eigentlich der Datenreorg im laufenden Betrieb ? Einmal am Tag um Mitternacht?

          Lästig sind auch die Duplicate Key Fehler im Log.

          Da der Primary Key Millisekunden vorsieht, aber auf ganze Sekunden gerundet wird, habe ich pro Tag ca. 20-30 Fehlermeldungen im Log.

          Lösungsmöglichkeiten:

          (1) Fehlermeldung abfangen und REPLACE anstelle von INSERT

          (2) Den Zeitstempel auf die Millisekunde genau machen

          (3) Die Fehlermeldung im Log unterdrücken ??

          1 Reply Last reply Reply Quote 0
          • P
            Pman last edited by

            Hier weiter zu duplicate key:

            http://forum.iobroker.net/viewtopic.php … 531#p24531

            1 Reply Last reply Reply Quote 0
            • First post
              Last post

            Support us

            ioBroker
            Community Adapters
            Donate

            725
            Online

            31.8k
            Users

            80.0k
            Topics

            1.3m
            Posts

            3
            4
            644
            Loading More Posts
            • Oldest to Newest
            • Newest to Oldest
            • Most Votes
            Reply
            • Reply as topic
            Log in to reply
            Community
            Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen
            The ioBroker Community 2014-2023
            logo