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

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

                                            @apollon77:

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

                                            Und vollständiges Log bitte ab Adapterstart! `

                                            Hi apollon77,

                                            sieht bei mir sauber aus, habe es allerdings nicht im Debug gemacht. Da kommen ja 8 Milliarden Meldungen 🙂 Aber so habe ich kein warning oder error.

                                            Oder willst du trotzdem debug-log ?

                                            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

                                            898
                                            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