Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Tester
    4. [Aufruf] Dringender Test sql 1.6.4

    NEWS

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

    • ioBroker goes Matter ... Matter Adapter in Stable

    • Monatsrückblick - April 2025

    [Aufruf] Dringender Test sql 1.6.4

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

      Hm … dann ist es echt schwierig dem auf die Spur zu kommen ... 😞

      Ist es immer der gleiche Datenpunkt?

      Wenn ja vllt zweite ssql-Instanz in Debug Log aufsetzen in zweite DB schreiben und nur wenige Datenpunkte dort aktivieren (die halt wo sowas passiert). Ich kann es aktuell nicht nachvollziehen. Ich brauche aber die Info was passiert wenn es das erste mal passiert

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

        @apollon77:

        Hm … dann ist es echt schwierig dem auf die Spur zu kommen ... 😞

        Ist es immer der gleiche Datenpunkt?

        Wenn ja vllt zweite ssql-Instanz in Debug Log aufsetzen in zweite DB schreiben und nur wenige Datenpunkte dort aktivieren (die halt wo sowas passiert). Ich kann es aktuell nicht nachvollziehen. Ich brauche aber die Info was passiert wenn es das erste mal passiert `

        War die Woche auf Dienstreise, werde das mal ausprobieren. Habe ja noch einen 2. Server der die DB schon installiert hat und vor sich hinläuft.

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

          609_sql14.jpg

          Wie verhext. Reload im Browser und die Daten sind da.

          Ist das vlt. ein Timeout?

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

            welche sql.Adapter Version? Ehrlich noch die 1.6.4?

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

              @sissiwup:

              sql14.JPG

              Wie verhext. Reload im Browser und die Daten sind da.

              Ist das vlt. ein Timeout? `

              1.7.1

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

                Hm … wann vorher neu gestartet?

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

                  @apollon77:

                  Hm … wann vorher neu gestartet? `

                  Jede Nacht um 4:00.

                  Ist aber der erste Aufruf von vis.

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

                    Folgendes Script:

                    setState("vEreignissAkt","------------ NEUSTART ------------");
                    

                    führt beim Neustart zu:

                     error: sql.0 Cannot insert INSERT INTO `iobroker`.ts_string (id, ts, val, ack, _from, q) VALUES(1617, 1521256587638, '------------ NEUSTART ------------', 0, 13, 0);: Error: ER_DUP_ENTRY: Duplicate entry '1617-1521256587638' for key 'PRIMARY'
                    2018-03-17 04:16:28	
                     error: sql.0 Cannot insert INSERT INTO `iobroker`.ts_string (id, ts, val, ack, _from, q) VALUES(1617, 1521256587637, '------------ NEUSTART ------------', 0, 13, 0);: Error: ER_DUP_ENTRY: Duplicate entry '1617-1521256587637' for key 'PRIMARY'
                     error: sql.0 Cannot insert INSERT INTO `iobroker`.ts_string (id, ts, val, ack, _from, q) VALUES(1617, 1521256587638, '------------ NEUSTART ------------', 0, 13, 0);: Error: ER_DUP_ENTRY: Duplicate entry '1617-1521256587638' for key 'PRIMARY'
                     error: sql.0 Cannot insert INSERT INTO `iobroker`.ts_string (id, ts, val, ack, _from, q) VALUES(1617, 1521256587637, '------------ NEUSTART ------------', 0, 13, 0);: Error: ER_DUP_ENTRY: Duplicate entry '1617-1521256587637' for key 'PRIMARY'
                    

                    Das sieht so aus als würde er beim Neustart das Skript 2x starten?

                    Alle anderen Datenpunkte mit den duplicates sind auch aus ähnlichen Aktion.

                    Meistens ist der Datenpunkt aus dem yr.0 Adapter: yr.0.forecast.day0.pressure

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

                      Debug Log?

                      1 Reply Last reply Reply Quote 0
                      • foxriver76
                        foxriver76 Developer last edited by

                        Habe auch mal eine Frage. Nutze den Adapter jetzt entsprechend mittels SQLite - läuft auch soweit. 🙂 Nur beim Neustart loggt er mir haufenweise

                        Cannot queue new requests, because more than 100
                        
                        

                        Ich schätze mal, dass er den alten Status nicht mehr kennt und versucht sämtliche abonnierte DPs auf ein mal in die DB zu schreiben, was die SQLite DB überfordert? Kann ich dem irgendwie entgegenwirken?

                        beste Grüße

                        fox

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

                          Ja das liegt an SQLite, Die kann immer nur eine Anfrage abarbeiten und ist daher (und auch aus anderen gründen) nur für nicht so viele Datenpunkte geeignet.

                          Und ja der Start schreibt den aktuellen Wert überall rein.

                          Du könntest mal versuchen das Limit höher zu setzen. Wenn Du das versuchen willst mach mal /opt/iobroker/node_modules/iobroker.sql/main.js in einem editor auf. und suche dort nach der Meldung. Gibts mehrfach. Ist immer so grob bei:

                              if (!multiRequests) {
                                  if (tasks.length > 100) {
                                      adapter.log.error('Cannot queue new requests, because more than 100');
                          

                          Da musst Du das 100 mal durch was anderes tauschen, also 500 oder 1000 🙂

                          Interessant wäre da vorher/nachher mal Speicherverbrauch und sowas zu vergleichen.

                          Eine Alternative wäre noch bei SQLite dieses Initiale Schreiben zu verhindern … Denke das ist eher noch "the way to go".

                          1.7.2 vom SQL Adapter vom Github schaltet WriteNulls bei SQLite automatisch aus

                          1 Reply Last reply Reply Quote 0
                          • foxriver76
                            foxriver76 Developer last edited by

                            @apollon77:

                            Du könntest mal versuchen das Limit höher zu setzen. Wenn Du das versuchen willst mach mal /opt/iobroker/node_modules/iobroker.sql/main.js in einem editor auf. und suche dort nach der Meldung. Gibts mehrfach. Ist immer so grob bei:

                                if (!multiRequests) {
                                    if (tasks.length > 100) {
                                        adapter.log.error('Cannot queue new requests, because more than 100');
                            

                            Da musst Du das 100 mal durch was anderes tauschen, also 500 oder 1000 🙂

                            Interessant wäre da vorher/nachher mal Speicherverbrauch und sowas zu vergleichen. `

                            Ich werde es bei Gelegenheit mal versuchen, allerdings war die DB wohl teilweise auch schon überfordert beim Neustart.

                            2018-03-24 09:48:11.319 - error: sql.0 Cannot queue new requests, because more than 100
                            2018-03-24 09:48:11.428 - error: sql.0 Cannot select SELECT id, type, name FROM datapoints WHERE name='harmony.0.fox.activities.Anzeige-Netflix';: Error: SQLITE_BUSY: database is locked
                            2018-03-24 09:48:11.430 - warn: sql.0 Cannot get index of "harmony.0.fox.activities.Anzeige-Netflix": Error: SQLITE_BUSY: database is locked
                            
                            

                            @apollon77:

                            Eine Alternative wäre noch bei SQLite dieses Initiale Schreiben zu verhindern … Denke das ist eher noch "the way to go". `

                            Das habe ich jetzt erst mal so gemacht. Danke - war mir nicht sicher ob ich das mit den NULL-Werten bei Start/Stop schreiben richtig interpretiert hatte. 😄

                            1 Reply Last reply Reply Quote 0
                            • S
                              SabineT last edited by

                              @apollon77:

                              Ich weiss aber das es sonderlogik für "Duplicates" gibt die das ganze mit +1ms Timestamp nochmals schreibt. Die ist schon ewig drin … `
                              Die Werte doppelt in die Datenbank zu schreiben ist aber auch nicht wirklich sehr Resourcen schonend.

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

                              Support us

                              ioBroker
                              Community Adapters
                              Donate

                              636
                              Online

                              31.7k
                              Users

                              79.8k
                              Topics

                              1.3m
                              Posts

                              15
                              203
                              24137
                              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