Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Error/Bug
    4. IoBroker absturz (scheinbar in js-controller) bei Namensänderung in Admin

    NEWS

    • 15. 05. Wartungsarbeiten am ioBroker Forum

    • Monatsrückblick - April 2025

    • Minor js-controller 7.0.7 Update in latest repo

    IoBroker absturz (scheinbar in js-controller) bei Namensänderung in Admin

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

      Hallo mitsammen,

      bastle gerade an einem Adapter wo die Namen von Objekten nachher im admin geändert werden sollen da der Adapter States mit Zeitstempel im namen kreiert.

      Vast bei jeder Namensänderung stürzt iobroker ab, im Log sehe ich manchmal sowas:

      host.jessi4	2017-08-04 12:52:58.065	info	force terminating
      host.jessi4	2017-08-04 12:52:55.970	info	received SIGTERM
      host.jessi4	2017-08-04 12:52:50.952	info	received SIGTERM
      iobroker	2017-08-04 12:52:49.816	info	exit 0
      iobroker	2017-08-04 12:52:49.762	info	Starting node restart.js
      iobroker	2017-08-04 12:52:47.894	info	_restart
      TypeError:	2017-08-04 12:52:47.886	error	at ObjectsInMemServer. (/opt/iobroker/node_modules/iobroker.js-controller/lib/objects/objectsInMemServer.js:2053:33)
      TypeError:	2017-08-04 12:52:47.886	error	at ObjectsInMemServer.getObject (/opt/iobroker/node_modules/iobroker.js-controller/lib/objects/objectsInMemServer.js:2060:23)
      TypeError:	2017-08-04 12:52:47.886	error	at clone (/opt/iobroker/node_modules/iobroker.js-controller/lib/objects/objectsInMemServer.js:1730:29)
      TypeError:	2017-08-04 12:52:47.886	error	at clone (/opt/iobroker/node_modules/iobroker.js-controller/lib/objects/objectsInMemServer.js:1730:29)
      TypeError:	2017-08-04 12:52:47.886	error	at clone (/opt/iobroker/node_modules/iobroker.js-controller/lib/objects/objectsInMemServer.js:1730:29)
      TypeError:	2017-08-04 12:52:47.886	error	at clone (/opt/iobroker/node_modules/iobroker.js-controller/lib/objects/objectsInMemServer.js:1730:29)
      TypeError:	2017-08-04 12:52:47.886	error	at clone (/opt/iobroker/node_modules/iobroker.js-controller/lib/objects/objectsInMemServer.js:1726:24)
      TypeError:	2017-08-04 12:52:47.886	error	at new Buffer (buffer.js:80:17)
      TypeError:	2017-08-04 12:52:47.886	error	at Function.Buffer.from (buffer.js:101:10)
      TypeError:	2017-08-04 12:52:47.886	error	at fromObject (buffer.js:262:9)
      TypeError:	2017-08-04 12:52:47.886	error	First argument must be a string, Buffer, ArrayBuffer, Array, or array-like object.
      uncaught	2017-08-04 12:52:47.853	error	exception: First argument must be a string, Buffer, ArrayBuffer, Array, or array-like object.
      
      

      Mein iobroker ist 1.1.2, node 6.11.1 und admin 1.8.1.

      1489_2017-08-04_131232.png

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

        Machst Du dazu bitte ein Github Issue auf ?! Danke!

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

          Scheinbar passiert da was komisches beim "clonen" des Objekts. Da ist scheinbar irgendwo ein "Buffer" Objekt drin und da knallt es.

          Wie sieht das Objekt denn genau aus?

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

            Appollon77,

            hast Recht! im common ist ein Wert mit einem Buffer. Hab das weggegeben und speichere die Daten in hex und jetzt geht's ohne Absturz!

            Trotzdem noch eine issue auf Github (bei welchen Adapter/instanz)?

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

              Wie genau sah das Common denn aus?

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

                So wie:

                { broadlink2: { data: buffer } }
                

                wo Buffer eine Buffer-Variable war.

                Hab diese in hex umgewandelt und als solches gespeichert.

                Übrigens, einen Änderungswunsch an den admin-Adapter:

                Sobald common etwas enthält wird das Zahnrad im objektviewer blau angezeigt.

                Es sollte wohl anzeigen welche Adapter eine History aufzeichnen!

                Wenn keine adapter.instanzen im Common aufscheinen sollte es nicht blau werden!

                Ich verwende 'adaptername' als Name aber nicht 'adaptername.instanz' und deshalb sollte klar sein dass mein Adapter nicht irgendwas aufzeichnet sonder nur was zwischenspeichert.

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

                  Meinst Du "common" oder "custom"? Die History-Werte landen in "custom"

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

                    Genau gesagt ist es 'common.custom'!

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

                      Jupp. 😉 der Plan von common.custom ist das dort andere Instanzen Details ablegen können und das das dann auch editiert werden kann. Aktuell nutzen das nur die History Adapter.

                      Von daher wäre in custom sauber mit der Instanz zu arbeiten. Ansonsten kannst du in common direkt durch eigene Felder erweitern. Musst ja nicht common.custom nehmen.

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

                        Ok,

                        hab die Daten nach native verschoben um nicht das blaue Zahnrad bei allen Objekten zu haben (sondern nur dort wo wirklich aufgezeichnet wird).

                        Nun, das funktioniert auch super aber ich wollte jetzt den custom-Eintrag mit dem admin/objects rauslöschen aber das geht nicht.

                        Admin fragt zwar ob ich es wirklich will, löscht es aber nicht :(!
                        1489_2017-08-06_e.png

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

                          @fsjoke:

                          Ok,

                          hab die Daten nach native verschoben um nicht das blaue Zahnrad bei allen Objekten zu haben (sondern nur dort wo wirklich aufgezeichnet wird).

                          Nun, das funktioniert auch super aber ich wollte jetzt den custom-Eintrag mit dem admin/objects rauslöschen aber das geht nicht.

                          Admin fragt zwar ob ich es wirklich will, löscht es aber nicht :(!

                          2017-08-06_e.png `
                          Schreibe einfach {} ins custom.

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

                            Ja, damit kann ich zwar custom auf ein leeres Objekt setzen aber das blaue Zahnrad bleibt da iobroker custom eben noch immer findet.

                            Einziger Ausweg schnell in den Javascript Adapter und dort mit Rohmitteln gearbeitet:

                            const id = 'xxxx.0.xxxx.xxxx';
                                 s = getObject(id);
                            s.common.custom = null;
                            setObject(id, s, (err, ok) => log(err));
                            
                            

                            Das funktioniert nur mit 'null' als Zuweisung, eine delete oder ein undefined, oder ein leeres Objekt funktioniert auch da nicht!

                            Aber ich hab's ja geschafft…

                            Ergänzung:

                            Habe bemerkt dass die Zuweisung von {} bei manchen funktioniert hat und bei anderen nicht!

                            Aber eine andere Methode: Zuweisung von null im RAW-Fenster scheint immer zu funktionieren. Also mach ich das jetzt falls ich es jemals noch brauche nachdem ich die Objekte migriert habe.

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

                            Support us

                            ioBroker
                            Community Adapters
                            Donate

                            949
                            Online

                            31.6k
                            Users

                            79.4k
                            Topics

                            1.3m
                            Posts

                            3
                            12
                            1269
                            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