Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. ioBroker Allgemein
    4. SQL-Fehlermeldung bei Neustart "Duplicate entry"

    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

    SQL-Fehlermeldung bei Neustart "Duplicate entry"

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

      Auszug zu kurz. Am besten wirklich starten mit dem Start vom Adapter und dann bis der ganze initiale Kram durch ist.

      Gesendet vom Handy …

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

        So Apollon, hier der log ab dem Moment wo ich den sql Adapter auf debug gestellt habe, bis zu dem Zeitpunkt wo sich die sache mit den errors beruhigt hat.
        1058_iobroker.2018-08-08.log

        Ich hoffe Du finest was raus!?!?

        Gruß

        Johnny

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

          Apollon hattest Du schon mal n Minütchen wo Du den log ansehen konntest?

          Hast Du was entdeckt?

          Gruß

          Johnny

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

            Nope noch keine Zeit gehabt

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

              Die Datenbank irrt hier nicht:

              Zuerst:

              INSERT INTO ts_number .... VALUES(107, 1533758018663, 22.98, 0, 7, 0);
              INSERT INTO ts_number .... VALUES(107, 1533758018664, 22.98, 0, 7, 0);
              INSERT INTO ts_number .... VALUES(107, 1533758018663, 22.98, 0, 7, 0);
              INSERT INTO ts_number .... VALUES(107, 1533758018664, 22.98, 0, 7, 0);
              INSERT INTO ts_number .... VALUES(107, 1533758018663, 22.98, 0, 7, 0);
              INSERT INTO ts_number .... VALUES(107, 1533758018664, 22.98, 0, 7, 0);
              INSERT INTO ts_number .... VALUES(168, 1533758018668, 22.98, 0, 5, 0);
              INSERT INTO ts_number .... VALUES(168, 1533758018669, 22.98, 0, 5, 0);
              INSERT INTO ts_number .... VALUES(168, 1533758018668, 22.98, 0, 5, 0);
              INSERT INTO ts_number .... VALUES(168, 1533758018669, 22.98, 0, 5, 0);
              INSERT INTO ts_number .... VALUES(168, 1533758018668, 22.98, 0, 5, 0);
              INSERT INTO ts_number .... VALUES(168, 1533758018669, 22.98, 0, 5, 0);
              

              dann kommt

              changed history configuration to pin detected datatype ...
              ````für die verschiedenen Datenpunkte und dann gleich darauf:
              

              DELETE FROM ts_number WHERE id=107 AND ts < 1502221980756;
              INSERT INTO ts_number .... VALUES(107, 1533758018663, 22.98, 0, 7, 0);: Error: ER_DUP_ENTRY: Duplicate entry '107-1533758018663' for key 'PRIMARY'
              INSERT INTO ts_number .... VALUES(107, 1533758018664, 22.98, 0, 7, 0);: Error: ER_DUP_ENTRY: Duplicate entry '107-1533758018664' for key 'PRIMARY'
              INSERT INTO ts_number .... VALUES(107, 1533758018663, 22.98, 0, 7, 0);: Error: ER_DUP_ENTRY: Duplicate entry '107-1533758018663' for key 'PRIMARY'
              INSERT INTO ts_number .... VALUES(107, 1533758018664, 22.98, 0, 7, 0);: Error: ER_DUP_ENTRY: Duplicate entry '107-1533758018664' for key 'PRIMARY'
              INSERT INTO ts_number .... VALUES(168, 1533758018669, 22.98, 0, 5, 0);: Error: ER_DUP_ENTRY: Duplicate entry '168-1533758018669' for key 'PRIMARY'

              DELETE FROM ts_number WHERE id=168 AND ts < 1502221980762;
              INSERT INTO ts_number .... VALUES(168, 1533758018668, 22.98, 0, 5, 0);: Error: ER_DUP_ENTRY: Duplicate entry '168-1533758018668' for key 'PRIMARY'
              INSERT INTO ts_number .... VALUES(168, 1533758018669, 22.98, 0, 5, 0);: Error: ER_DUP_ENTRY: Duplicate entry '168-1533758018669' for key 'PRIMARY'
              INSERT INTO ts_number .... VALUES(168, 1533758018668, 22.98, 0, 5, 0);: Error: ER_DUP_ENTRY: Duplicate entry '168-1533758018668' for key 'PRIMARY'

              
              Hmm, das Delete ist um ein Jahr nach vorne verschoben … 08.08.2017 21:53:01
              
              Kannst Du zur Vollständigkeit das JavaScript posten, das die Werte setzt?
              1 Reply Last reply Reply Quote 0
              • apollon77
                apollon77 last edited by

                Das ist ein Timing-Issue in der Initialisierung. Soweit bin ich schon …

                Das Problem ist das Dinge noch nicht sauber initialisiert sind (sql calls sind halt asynchron) aber dann schnell Werte reinkommen. Und dann passieren komische Dinge ...

                Mal warten bitte

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

                  So, bitte mal die 1.9.3 vom Github installieren, instanz neustarten (mit Debug an wieder) und mir in jedem Fall das Log schicken/posten.

                  jetzt besser?

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

                    Hab das update durchgeführt und den Adapter auf debugging gestellt. bis jetzt keine Verbesserung. Was mir aber aufgefallen ist, auf den ersten blick sind das alles Fehlermeldungen von Statusänderungen durch z.b. Arduinos die über simple api senden (http://<ip-adresse>:8082/set/javascript.0.xxxxxx)

                    hier mal das log-File
                    1058_iobroker.2018-08-10.log

                    Gruß

                    Johnny</ip-adresse>

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

                      Kannst Du zur Vollständigkeit das JavaScript posten, das die Werte setzt?

                      javascript.0.IntelNUC.*

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

                        Das ist kein Javascript sondern ein bash-script auf dem Proxmox

                        Der vollständigkeithalber

                        #!/bin/sh
                        ### Scriptname:                sysinfo.sh
                        ### Kurzbeschreibung:      Ermitteln von Systemwerten InterlNUC root-System und überträgt an ioBroker
                        ### Ersteller:                    Prinzeisenherz1 (Schneider Johnny) am 24072018
                        ###
                        #########################################################
                        
                        ### Lokale Variablen anlegen
                        ioBrokerIP="192.168.178.2:8082"
                        echo "ip "$ioBrokerIP
                        URL_set_StorageTotal="http://"$ioBrokerIP"/set/javascript.0.IntelNUC.VM-ioBroker.StorageTotal?value="
                        URL_set_StorageFree="http://"$ioBrokerIP"/set/javascript.0.IntelNUC.VM-ioBroker.StorageFree?value="
                        URL_set_StorageUsed="http://"$ioBrokerIP"/set/javascript.0.IntelNUC.VM-ioBroker.StorageUsed?value="
                        URL_set_MemTotal="http://"$ioBrokerIP"/set/javascript.0.IntelNUC.VM-ioBroker.MemTotal?value="
                        URL_set_MemFree="http://"$ioBrokerIP"/set/javascript.0.IntelNUC.VM-ioBroker.MemFree?value="
                        URL_set_MemUsed="http://"$ioBrokerIP"/set/javascript.0.IntelNUC.VM-ioBroker.MemUsed?value="
                        URL_set_load1Min="http://"$ioBrokerIP"/set/javascript.0.IntelNUC.VM-ioBroker.load1Min?value="
                        URL_set_load5Min="http://"$ioBrokerIP"/set/javascript.0.IntelNUC.VM-ioBroker.load5Min?value="
                        URL_set_load15Min="http://"$ioBrokerIP"/set/javascript.0.IntelNUC.VM-ioBroker.load15Min?value="
                        URL_set_Uptime_day="http://"$ioBrokerIP"/set/javascript.0.IntelNUC.VM-ioBroker.UptimeDay?value="
                        URL_set_Uptime_hour="http://"$ioBrokerIP"/set/javascript.0.IntelNUC.VM-ioBroker.UptimeHour?value="
                        
                        ### Gesamtspeicherplatz Arbeitsspeicher in Gigabyte ermitteln und an die ioBroker übertragen
                        tmp2=$(free -m | awk '{print $2/1024}' | sed -n '2p' | sed 's/G//g')
                        
                        ### Freier Speicherplatz Arbeitsspeicher in Gigabyte ermitteln und an die ioBroker übertragen
                        tmp3=$(free -m | awk '{print $4/1024}' | sed -n '2p' | sed 's/G//g')
                        
                        ### Belegter Speicherplatz Arbeitsspeicher in Gigabyte ermitteln und an die ioBroker übertragen
                        tmp4=$(free -m | awk '{print $3/1024}' | sed -n '2p' | sed 's/G//g')
                        
                        ### Gesamtspeicherplatz Datenträger in Gigabyte ermitteln und an die ioBroker übertragen
                        tmp10=$(df -H | awk '{print $2}' | sed -n '4p' | sed 's/G//g')
                        
                        ### Freier Speicherplatz Datenträger in Gigabyte ermitteln und an die ioBroker übertragen
                        tmp11=$(df -H | awk '{print $4}' | sed -n '4p' | sed 's/G//g')
                        
                        ### Belegter Speicherplatz Datenträger in Gigabyte ermitteln und an die ioBroker übertragen
                        tmp12=$(df -H | awk '{print $3}' | sed -n '4p' | sed 's/G//g')
                        
                        ### Systemload 1-Min ermitteln und an die ioBroker übertragen
                        tmp5=$(cat /proc/loadavg | awk '{print $1}')
                        
                        ### Systemload 5-Min ermitteln und an die ioBroker übertragen
                        tmp6=$(cat /proc/loadavg | awk '{print $2}')
                        
                        ### Systemload 15-Min ermitteln und an die ioBroker übertragen
                        tmp7=$(cat /proc/loadavg | awk '{print $3}')
                        
                        ### UpTime in Tage und Stunden ermitteln und an ioBroker übertragen
                        tmp8=$(cat /proc/uptime | awk '{printf"%.0f\n", $1}')
                        ##############################################################################################
                        days=$(($tmp8 / 86400 ))
                        hours=$((($tmp8 / 3600) - (days * 24)))
                        ##############################################################################################
                        
                        ####### Sende Gesamtspeicherplatz in Gigabyte an ioBroker
                        url_tmp2=$URL_set_MemTotal$tmp2
                        echo "$url_tmp2"
                        curl -s $url_tmp2 > /dev/null 2>&1
                        ################################################################################################
                        
                        ####### Sende freien Speicherplatz in Gigabyte an ioBroker
                        url_tmp3=$URL_set_MemFree$tmp3
                        echo "$url_tmp3"
                        curl -s $url_tmp3 > /dev/null 2>&1
                        ################################################################################################
                        
                        ####### Sende belegter Speicherplatz in Gigabyte an ioBroker
                        url_tmp4=$URL_set_MemUsed$tmp4
                        echo "$url_tmp4"
                        curl -s $url_tmp4 > /dev/null 2>&1
                        ################################################################################################
                        
                        ####### Sende Gesamtspeicherplatz in Gigabyte an ioBroker
                        url_tmp10=$URL_set_StorageTotal$tmp10
                        echo "$url_tmp10"
                        curl -s $url_tmp10 > /dev/null 2>&1
                        ################################################################################################
                        
                        ####### Sende freien Speicherplatz in Gigabyte an ioBroker
                        url_tmp11=$URL_set_StorageFree$tmp11
                        echo "$url_tmp11"
                        curl -s $url_tmp11 > /dev/null 2>&1
                        ################################################################################################
                        
                        ####### Sende belegter Speicherplatz in Gigabyte an ioBroker
                        url_tmp12=$URL_set_StorageUsed$tmp12
                        echo "$url_tmp12"
                        curl -s $url_tmp12 > /dev/null 2>&1
                        ################################################################################################
                        
                        ####### Sende freien Speicherplatz in Prozent an ioBroker
                        url_tmp5=$URL_set_load1Min$tmp5
                        echo "$url_tmp5"
                        curl -s $url_tmp5 > /dev/null 2>&1
                        ################################################################################################
                        
                        ####### Sende belegter Speicherplatz in Prozent an ioBroker
                        url_tmp6=$URL_set_load5Min$tmp6
                        echo "$url_tmp6"
                        curl -s $url_tmp6 > /dev/null 2>&1
                        ################################################################################################
                        
                        ####### Sende belegter Speicherplatz in Prozent an ioBroker
                        url_tmp7=$URL_set_load15Min$tmp7
                        echo "$url_tmp7"
                        curl -s $url_tmp7 > /dev/null 2>&1
                        ################################################################################################
                        
                        ####### Sende UpTime an ioBroker
                        url_days=$URL_set_Uptime_day$days
                        echo "$url_days"
                        curl -s $url_days > /dev/null 2>&1
                        ################################################################################################
                        url_hours=$URL_set_Uptime_hour$hours
                        echo "$url_hours"
                        curl -s $url_hours > /dev/null 2>&1
                        ################################################################################################
                        
                        

                        Gruß

                        Johnny

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

                          Hab mal auf Version 1.6.1 downgegraded und da gibt es die Probleme nicht!

                          Gruß

                          Johnny

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

                            Hi, sorry für die Wartezeit … bitte versuch die Github Version nochmal. Habe noch was gefunden.

                            Zuerst wurden alle Typen und Indizes aus der DB eingelesen nur um das dann grad wieder zu überschreiben 🙂

                            Wenn immer noch blöd dann bitte wieder log.

                            Das muss zu fixen sein 🙂

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

                              @PrinzEisenherz1: kamst Du schon zum testen der Github Version?

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

                                @Apollon77:

                                Habe ebenso das Problem mit Duplicate Entry mit meiner NAS SQL-DB.

                                Bin auch an der Lösung interessiert. Habe mir mal ein Lesezeichen gesetzt.

                                2018-08-20 06:25:28.243  - [31merror[39m: sql.0 Cannot insert INSERT INTO `iobroker`.ts_bool (id, ts, val, ack, _from, q) VALUES(1760, 1970000, false, 1, 4, 0);: Error: ER_DUP_ENTRY: Duplicate entry '1760-1970000' for key 'PRIMARY'
                                
                                

                                oder möchtest du das ich das teste ? habe aber kein Testsystem, kann ich nur auf meinem Prod. System machen.

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

                                  Welchen verwharungsort muss ich einstellen um die version 1.9.3 zu bekommen ?

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

                                    die 1.9.3 musst Du über git installieren.

                                    Hatte aber bei mir auch nicht geholfen bin dann auf ne 1.6er Version zurück und da hab ich keine Probleme.

                                    EDIT:

                                    Hab gerade erst gesehen das Apollon nochmal was geschrieben hat zu der 1.9.3 und da nochmal was geändert hat.

                                    Die Version hab ich noch nicht getestet. Werde ich nachholen.

                                    Gruß

                                    Johnny

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

                                      Edit: siehe oben

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

                                        @Segway

                                        Hab meine Aussage editiert.

                                        Hab von Apollon die letzten Nachrichten übersehen

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

                                          So, hab jetzt die 1.9.3 nochmals getestet. Schein jetzt zu laufen. Auch nach nem Neustart kommen die duplicate Meldungen nicht mehr.

                                          Klasse Apollon

                                          Danke

                                          Johnny

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

                                            super das hört sich gut an !!!!!! TOP. wäre gut die 1.9.3 offiziell zu amchen dann teste ich das auch 🙂

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

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate
                                            FAQ Cloud / IOT
                                            HowTo: Node.js-Update
                                            HowTo: Backup/Restore
                                            Downloads
                                            BLOG

                                            656
                                            Online

                                            31.9k
                                            Users

                                            80.1k
                                            Topics

                                            1.3m
                                            Posts

                                            4
                                            46
                                            2805
                                            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