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.
    • 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
                                        • apollon77
                                          apollon77 last edited by

                                          Bitte auch gern testen mit neuester GitHub Version. Kann nur besser werden 🙂

                                          Und vollständiges Log bitte ab Adapterstart!

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

                                            Kannst de doch testen. Gehst im Admin auf das Octa-Symbol und installierst dir den SQL-Adapter aus m git
                                            1058_git-installation.png

                                            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

                                            926
                                            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