Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. ioBroker Allgemein
    4. js-controller 4.0 jetzt im BETA/LATEST!

    NEWS

    • Monatsrückblick - April 2025

    • Minor js-controller 7.0.7 Update in latest repo

    • Save The Date: ioBroker@Smart Living Forum Solingen, 14.06.

    js-controller 4.0 jetzt im BETA/LATEST!

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

      Hallo ioBroker-Community,

      nach längerer Entwicklungszeit kommt heute der neue js-controller 4.0 (Releasename "Isabelle") ins Beta/Latest Repository (sollte im laufe des Abends bei allen auftauchen). Dieser Artikel enthält alle wichtigen Infos zu diesem Release und im zweiten Post eine kleine FAQ.

      Node.js Versions-Anforderungen
      In diesem Release entfällt Node.js 10.x, welches seit April letztem Jahr nicht mehr gepflegt wird. Node.js 16.x ist dazugekommen. Die unterstützten Node.js Versionen sind damit: 12.x, 14.x und 16.x. Die empfohlene Node.js Version für ioBroker heben wir mit diesem Release auf 14.x an. Node.js 16.x wird mit js-controller 4.0 nun auch mit npm 7 bzw. 8 unterstützt.
      Bitte beachtet weiterhin bei Node.js Updates die Anleitung im Forum unter https://forum.iobroker.net/topic/44566/how-to-node-js-für-iobroker-richtig-updaten-2021-edition , welche NOCH NICHT für js-controller 4.0 aktualisiert wurde. Infos in der FAQ hier im Thread.

      Informationen zur Version
      Neben einigen Optimierungen und Verbesserungen stand der Haupt-Fokus dieser Version auf Performance-Verbesserungen. Ein paar neue Features sind aber ebenfalls hinzugekommen. Auch daran den Wildwuchs in der Umsetzung einiger Adapter etwas einzugrenzen wurde weiter gearbeitet, was ggf. zu neuen Log-Meldungen für bestimmte Fälle führt. Bitte unterstützt hier wieder und legt bei den relevanten Adaptern im GitHub Issues an, damit diese Dinge gefixt werden können.

      Mit dem js-controller 4.0 wird intern die Datenbank von "file" auf "jsonl" umgestellt. Dies geschieht bei der Installation automatisch ohne weitere Aktionen, wenn file genutzt wird. Weitere Details dazu sieht in der FAQ (Post #2)! Nach erfolgter Migration erscheint beim nächsten Öffnen (oder Reloads falls offen) des Admin5 auch eine Information dazu:

      jsonl-warnung.png

      Detailliertere Informationen zu allen Änderungen und Features findet Ihr weiter unten und im Changelog. Ich hoffe auch diesmal auf Eure tatkräftige Unterstützung, sodass der Stable-Release dann genau so reibungslos verläuft wie bei den letzten Versionen.

      In Summe sind in diese Version wieder über 100 Änderungen in über 300 commits eingeflossen. Dafür bedanke mich diesmal wieder besonders bei foxriver76, AlCalzone und natürlich Bluefox und auch ein paar weiteren Entwicklern für die aktive Mitarbeit an dieser Version!

      Der js-controller 4.0 ist generell kompatibel mit allen bestehenden ioBroker-Systemen. Ein Update von der 2.0/2.1/2.2/3.x ist problemlos möglich. Wir empfehlen allerings vor dem Update auf die 4.0 idealerweise ein Update auf die 3.3.x durchzuführen, da ein Downgrade nach einem erfolgten Update nur auf eine 3.3.x möglich ist (siehe FAQ)! Nur die Node.js Version muss weiterhin mindestens 12.x sein, wie oben bereits ausgeführt. Wer überlegt die Node.js Version anzuheben bitte weiter unten im Abschnitt "Was ist zu testen" lesen 🙂

      Es gibt aktuell keine bekannten inkompatiblem Adapter, aber einige Empfehlungen weiter unten.


      Installation


      VOR der Installation

      Wie der Thread-Name sagt ist diese version nur für die User verfügbar, die das Beta/Latest Repository nutzen! Bei Stable Systemen wird das Update noch nicht angeboten.

      Wie bei jedem Test dieser Art: Bitte macht ein Backup! iobroker backup bzw kopieren des iobroker-data Verzeichnisses reichen an sich aus. Bitte nicht das node_modules Verzeichnis einfach kopieren, da sonst symbolische Links kaputt gehen können, was zu größeren Problemen danach führt. Eine alte 3.3.x-Version des js-controller kann im Notfall einfach wieder per npm install iobroker.js-controller@version ("version" durch die gewünschte Versionsnummer ersetzen, vorher ins ioBroker Verzeichnis wechseln cd /opt/iobroker) installiert werden und sollte alles wieder herstellen.

      Für die User, welche die experimentelle JSONL-Datenbank bereits einsetzen, ändert sich nichts - ausser das dieser Datenbank-Typ nun die offizielle ist 🙂

      Nötige Adapter-Aktualisierungen

      Aktuell sind zwei Adapter bekannt, welche Inkompatibel sind:

      • Backitup sollte auf 2.3.3+ aktualisiert sein, damit vor allem Restores mit js-controller 4 sauber funktionieren
      • Node-Red muss in Verson 2.4.2 Installiert sein, da der Adapter sonst nicht funktioniert
      • km200 (see https://github.com/frankjoke/ioBroker.km200/issues/69😞 Fix is described in https://forum.iobroker.net/post/760260

      Am besten dennoch VOR dem js-controller Update alle verfügbaren Adapter-Updates prüfen und alle Updates installieren, die im Changelog auf Optimierungen oder Anpassungen für den js-controller 3.3 oder höher hinweisen.

      Es werden aber, wie oben ausgeführt, einige Adapter ggf. Warnungen ins Log schreiben - und ggf kommen ein paar neue dazu, welche aber primär bei Objektanlagen interessant sind und weniger im Betrieb "nerven". Meldungen die vor dem Upgrade im Log waren sind jetzt auch noch da.
      Bitte zuerst versuchen die gemeldeten Objekt-IDs via Admin zu löschen und den Adapter neu zu starten. Wenn die Meldungen danach nicht weg sein sollten ist aktuell die einzige Option das Loglevel der betroffenen Instanz auf "Warning" zu setzen - aber erst nachdem die Logs idealerweise in einem GitHub-Issue beim entsprechendem Adapter gemeldet wurden!

      Achtung: MASTER-Systeme Reihenfolgen beachten!

      Bei einem Multi-Host-System, welches auf js-controller 2.2 oder 3.x läuft, ist es beim Update auf Version 4.0 empfohlen, zuerst das Master-System zu aktualisieren. Der Master muss dann wieder gestartet werden. Die Slaves werden danach aktualisiert!

      Bei Updates von Master/Slave-Systemen mit js-controller 1.5 oder früher auf die 4.0 müssen zwingend zuerst die Slaves und der Master als letztes aktualisiert werden. Beim Slave Update muss der alte Master aber noch laufen. Die Slaves bleiben nach dem Update offline und können sich nicht zum Master verbinden und werden erst wieder funktionieren wenn auch der Master auf die 4.0 aktualisiert wurde!

      Windows

      Aus der Community kommt von @sigi234 eine Anleitung für ein Windows Update https://forum.iobroker.net/topic/51574/windows-installation-update

      Für alle "alten manuellen" Installationen gilt

      • iobroker update
      • ioBroker muss gestoppt sein.
      • Vor dem Update bitte prüfen das keine Prozesse mehr laufen
      • iobroker upgrade self
      • ioBroker starten

      Linux

      • iobroker update
      • ioBroker stoppen (iobroker stop)
      • prüfen das keine Prozesse (Adapter, Backups) mehr laufen (ps auxww|grep io und auch ps auxww|grep backup ). Es passiert manchmal das trotz dem Stoppen noch Zombies zurückbleiben
      • iobroker fix
      • Wie üblich wird das Update dann per iobroker upgrade self ausgeführt.
      • ioBroker starten (iobroker start)

      Die Installation wird - wenn Sie von einem 2.x/3.x-System aus erfolgt einige Warnungen/Fehler loggen. Wenn diese aussgehen wie im folgenden Bild gezeigt (GET/SET-UNSUPPOTED bzw LUA script load error), ist dies erwartet und ok!

      Update js-controller from @3.3.22 to @4.0.4
      npm install iobroker.js-controller@4.0.4 --loglevel error --unsafe-perm --prefix "/opt/iobroker" (System call)
      Server Objects 127.0.0.1:37942 Error from InMemDB: Error: GET-UNSUPPORTED for namespace cfg.: Data=["meta.objects.features.useSets"]
      Server Objects 127.0.0.1:37942 Error from InMemDB: Error: GET-UNSUPPORTED for namespace cfg.: Data=["meta.objects.protocolVersion"]
      Server States 127.0.0.1:60678 Error from InMemDB: Error: GET-UNSUPPORTED for namespace meta.: Data=["meta.states.protocolVersion"]
      Server States 127.0.0.1:60680 Error from InMemDB: Error: PSUBSCRIBE-UNSUPPORTED for namespace meta.: Data=["meta.*"]
      Server Objects 127.0.0.1:37942 Error from InMemDB: Error: Unknown LUA script load
      Server Objects 127.0.0.1:37942 Error from InMemDB: Error: Unknown LUA script load
      Server Objects 127.0.0.1:37942 Error from InMemDB: Error: Unknown LUA script load
      Server Objects 127.0.0.1:37942 Error from InMemDB: Error: SET-UNSUPPORTED for namespace cfg.: Data=["meta.objects.features.useSets",{"type":"Buffer","data":[49]}]
      Server Objects 127.0.0.1:37942 Error from InMemDB: Error: multi NOT SUPPORTED
      Server Objects 127.0.0.1:37942 Error from InMemDB: Error: sadd NOT SUPPORTED
      Server Objects 127.0.0.1:37942 Error from InMemDB: Error: exec NOT SUPPORTED
      Server Objects 127.0.0.1:37942 Error from InMemDB: Error: multi NOT SUPPORTED
      Server Objects 127.0.0.1:37942 Error from InMemDB: Error: sadd NOT SUPPORTED
      Server Objects 127.0.0.1:37942 Error from InMemDB: Error: exec NOT SUPPORTED
      

      Wichtig: Falls es bei Updates von js-controller 3.2.x bei update oder upgrade einen Fehler gibt "No connection to database" dann bitte nochmals versuchen und wenn es wieder passiert folgende Schritte ausführen:

      • Editiere /opt/iobroker/iobroker-data/iobroker.json
      • Unter objects und states gibt es ein ' "connectTimeout": 2000,`
      • Zahl ändern in 5000
      • Neu versuchen
      • Nach dem Upgrade am besten den Wert wieder zurücketzen weil der js-controller 3.3+ hier optimiert und länger wartet

      Bei Fehlern:
      Wenn bei der Installation Fehler wegen fehlender Zugriffsrechte auftreten, am besten den Installation-Fixer (iobroker fix wer schon einen js-controller 2.x oder höher hat, alternativ weiterhin manuell via curl -sL https://iobroker.net/fix.sh | bash -) nutzen und die Installation wiederholen.
      Falls es auch danach noch Fehler gibt, bitte die Installation erneut mittels sudo -H -u iobroker npm install iobroker.js-controller versuchen. Bitte berichtet solche Fälle hier im Thread.

      Die Installation kann ggf. Warnungen ausspucken über potentiell "deprecated" NPM Module oder Compiler-Warnungen oder (bei optionalen Paketen auch -Fehler) anzeigen (z.B, unix_dgram, serialport, pam_authentication und ggf andere). Hier gilt wie immer: Ignorieren 🙂
      Ebenso eine Aufforderung "npm audit fix" auszuführen kann ignoriert werden!

      NACH der Installation

      Nach der Installation sollte der ioBroker automatisch wiederder gestartet werden. Falls doch nicht bitte mittels iobroker start starten.

      Wenn alles klappt merkt Ihr ausser der höheren Versionsnummer in der Host-Ansicht im Admin keinen Unterschied. Alles funktioniert weiterhin wie vorher. Alle Adapterinstanzen starten und funktionieren. Wenn das so ist hat alles geklappt.

      Falls im Log Warn-Meldungen auftauchen mit dem Hinweis diese an den Entwickler zu senden, dann bitte schauen welcher Adapter es ist und entsprechend dort Issues bitte anlegen!


      Was hat sich geändert, was besonders ansehen/beachten?


      Neben einiger weiterer Bugfixes gibt es folgende Änderungen und Fixes zu erwähnen:

      • generell siehe Changelog, speziell auch für die Features
      • Prüfen das mit JSONL alles tut (Im Backup Dir werden die letzten "File DB Backups" liegen bleiben, kann man manuell löschen)
      • Bitte generell Augenmerk darauf legen das alle CLI Kommandos noch tun die man so nutzt. Da wurde einiges unter der Haube überarbeitet
      • Gern mal ein Nodejs update testen um zu schauen das das neue Rebuild tut wie es soll 🙂
      • Einige Adapter werden Warnungen ausgeben wenn State-Werte gesetzt werden, da nun auch Datentypen und min/max-Werte geprüft werden. Bitte bei den Adapter-Repos melden

      Speziell die Entwickler sollten bitte die genannten Deprecations und neuen Features anschauen und beachten.

      Wie bereits gesagt, viele Änderungen fanden hinter den Kulissen statt. Hier für Interessierte als Spoiler eine Zusammenfassung:


      BREAKING CHANGES

      • Support for Node.js 10 is dropped! Supported are Node.js 12.x, 14.x and 16.x
      • CLI command iob update --updateable changed to iob update --updatable
      • CLI command iob update http://download.iobroker.net/sources-dist.json is not supported anymore
      • CLI command iob rebuild adaptername is no longer supported because of the new way of automatic rebuilds and some unwanted side effects
      • CLI command iob state get <id> will no longer handle binary state values (which was never really working before). We added iob state getBinary <id> <encoding> as new way.
      • Ensure that on a backup-restore the same adapters and adapter versions are restored as existing on backup time. Also check js-controller version and error on mismatch (is allowed to be forced accepted by --force parameter for restore)
      • The "file" database will be automatically converted into JSONL and the database types that use "file" are adjusted to "jsonl" on installation (and backup restore). This means that a rollback of js-controller is only possible to 3.3 after 4.0 was installed! Rollback to former versions require a manual migration to "file" DB before the downgrade! (COMMUNICATION, TESTFOKUS)

      Features

      • (bluefox) Added complexity rules for user passwords: New created passwords need to follow the following rules (TODO ADMIN UI INFO ISSUE):
        • minimum length is 8
        • contains at least one digit
        • contains at least one lower case letter
        • contains at least one upper case letter
      • (foxriver76) Introduce option "--custom" when deleting instances or adapter to also clean up relevant custom entries from all objects (TODO ADMIN ISSUE ADD CHECKBOX!, TESTFOKUS)
      • (foxriver76) Added new host objects to provide Node.js version and PID
      • (foxriver76) Updated the Linux capabilities on js-controller start when a Node.js version change was detected (and initial on first run)
      • (AlCalzone/foxriver76) Further optimize strategy for required Node.js module rebuilds. We first try to run rebuild in root package and if still packages are left (or it fails) we try to rebuild the really affected modules alone. Should give better results then former strategy (TESTFOKUS)
      • (bluefox) Added support for configuring multiple repositories (TODO LINK+INFO FLAG)
      • (Apollon77) Streamline logging configuration for all available transports: A set Loglevel in config means that this loglevel is pinned for the transport for all cases. An Empty/not set level ("Default" in Admin) means that logging is dynamic and can be adjusted per Instance controller or loglevel state on the fly.
      • (foxriver76) Added installedFrom info to adapter start log line when not installed from npm normally

      Optimizations and Fixes

      • (Apollon77/foxriver76) Improve performance of object deletions (also when deleting instances or adapters) significantly (file-db 4x faster, jsonl-db 14x faster, redis 360x% !! faster)
      • (foxriver76/Apollon77) Improve performance for redis object searches by up to 2,5x by using lookup structures for object types and custom object properties. This optimization is only active for single host redis systems automatically, but can be activated for multihost redis systems too after all hosts are (and stay!) on js-controller 4.0! (TODO DOCS)
      • (foxriver76/Apollon77) Improve performance for object searches in general by limiting search namespaces to the relevant ones automatically
      • (foxriver76) Improve handling of backup restores when custom hostnames were used (especially relevant for Docker usage)
      • (foxriver76) Optimize backup to make sure invalid user-generated JSONs do not prevent backups from being considered valid
      • (foxriver76/klein0r) Improved CLI help
      • (foxriver76) Preserve changed instance names also when updating adapter (name was reset before)
      • (foxriver76) stop adapters on Windows prior update to prevent EBUSY
      • (foxriver76) Prevent crashes for uploads with invalid adapter installations
      • (bluefox) Removed news from instance/adapter objects on install/update because taken from repository in Admin5 (TODO CHECK ADMIN4 EFFECTS)
      • (AlCalzone) Removed extraneous "npm install" inside adapter directory
      • (foxriver76/AlCalzone) reduce JSONL compression frequency to reduce I/O (relevant when experimental JSONL database modules are used)
      • (foxriver76) prevent uploading js-controller (creating system.adapter.js-controller object) and remove existing cases on setup first
      • (foxriver76) prevent crash when multihost password is invalid and multihost active
      • (bluefox/foxriver76) bigger internal refactorings in cli commands (TESTFOKUS)
      • (foxriver76) made logging of not fulfilled adapter dependencies more user-friendly
      • (foxriver76) Check user and group assignments and remove unknown users from groups (could have happened in earlier versions) in setup first
      • (foxriver76) Prevent crash on adapter install/update if version string in repo is invalid
      • (AlCalzone) Update and optimize JSONL database integration and configuration options
      • (foxriver76) make sure that settings for file/jsonl DB in configfile are also respected
      • (foxriver76) Update seq integration for logging
      • (foxriver76) If logging can not be initialized because of a fatal error do not start js-controller
      • (foxriver76) Prevent start of a debug session for an instance that is already running
      • (Apollon77) Fix an edge case for file db which could lead to main and backup file being broken in strange situations with multiple crashes in a row
      • (foxriver76) make sure that admin, backitup and discovery instances are created when update of controller happens if installed and no instance exists
      • (Apollon77) Optimize Stop Handling to prevent errors
      • (Apollon77) Optimize Adapter process initialization to prevent edge case errors
      • (foxriver76) Optimize meta object sync
      • (Apollon77, foxriver76, bluefox, AlCalzone) Several fixes and refactorings to prevent potential crash cases reported by Sentry and other sources

      Developer relevant DEPRECATIONS/WARNINGS

      • js-controller is no longer installable from GitHub because is now a monorepo. Use @dev tag on npm to get the nightly build of master js-controller!
      • log info when setState is used for an object of type file - use setBinaryState instead!
      • log info when default value of an object is invalid (e.g. does not match object type)
      • log info when common.states is used and not an object (deprecate String usage)
      • log info when common.min/common.max exists on non numbers and contain invalid values/types
      • add get/setForeignBinaryState methods as copy from get/setBinaryState allow adapter to migrate; get/setBinaryState will be changed in 4.1 to be "non Foreign"
      • Enhanced object checks: adapter need to have a name as string
      • Decline calls for getForeignObjects with non string pattern (was pot. crashing before)
      • adapter.tools is deprecated and replaced by a shim. Use methods in adapter class or adapter-core instead or open issues if you need more internal functions
        The object view definition "custom/state" is now removed from js-controller after being replaced by "system/custom" in js-controller 3.3. All relevant adapters are updated (COMMUNICATION)
      • remove all Fifo Methods from adapter.js because deprecated since 1.x
      • remove adapter.objects.* methods because deprecated since 2.x

      Developer relevant new Features

      • (jogibear9988) Add new "unload-safe" promise based "adapter.delay" method to delay further code execution, but still make sure code do not continue after unload was called. This method can not be used inside the "unload" method itself!
      • (jogibear9988/AlCalzone/foxriver76/Apollon77) Revamp adapter.*Timeout and adapter.*Interval methods to be "unload-safe" and also clear missing timeouts without warnings for more developer convenience! The methods to set a timeout or interval can not be used inside the "unload" method itself!
      • (foxriver76) Allow to set "null" for common.states and not log error for object (but has no effect on extend, so value does not get deleted!)
      • (AlCalzone) Introduce new methods in tools for Node.js module management: installNodeModule, uninstallNodeModule (TODO Issues adapter that use npm install -> Move))
      • (bluefox) Add license management functionality to host. Adapters can use adapter.getSuitableLicenses to get available relevant licenses (TODO DOCS)
      • (AlCalzone) Switch NPM relevant handling to library pak to be more flexible for the future which package manager we want to use. Important: There are still parts that rely on npm for now!
      • (bluefox) Also report docker info when sending diag data
      • (foxriver76) Add server time to getHostInfo message
      • (foxriver76) For multihost clusters with js-controller 4.0+ the hosts automatically determine a "primary" host that can be used js-controller internally (right now, preparation for future topics)

      Developer relevant Optimizations and Fixes

      • (foxriver76) fixed permissionError on setBinaryState
      • (foxriver76) preserve "native" content for instanceObjects when updating the objects on adapter start
      • (Apollon77/foxriver76) Limit the search scope for object types host, adapter, instance, instanceStats, enum, script, group, user, config to the relevant namespaces when no search start/end is provided to speedup these calls in general
      • (foxriver76) Optimize deleteDevice/deleteChannel methods to just delete all objects the relevant device/channel
      • (foxriver76) Removed some magic path lookups to be compatible to npm 7/8. Appname of controller is now always "iobroker" ("ioBroker" in dev cases)
      • (foxriver76) Also use Sentry (if enabled/allowed) in CLI commands whenever database is initialized to report crashes from CLI if they happen
      • (foxriver76) Introduce a database protocol version number to allow detection of the available database features in multihost environments
      • (bluefox) Prevent issues when using adapter.addChannelToEnum because of missing callback
      • (foxriver76) make sure autoSubscribe works as expected in all cases
      • general dependency updates
      • code style optimizations and streamline code

      Generell ist zu testen, ob alles noch so funktioniert wie vorher auch. Das ist das wichtigste!


      Wie Fehler melden?


      Wer sich unsicher ist, ob ein Fehler vorliegt, sollte am besten hier im Thread das Problem beschreiben. So können wir alle versuchen, das Problem nachzuvollziehen und ggf. einzugrenzen.

      Bitte checkt auch die "Known issues Liste" (zweiter Post) mit den Dingen die aktuell während dem Beta-Test bekannt sind und bis zum Release noch angepasst werden.

      Sobald ein Fehler auftritt der in einer Fehlermeldung oder einen Crash mit Fehlerdetails im Log oder auf Kommandozeile endet, dann dazu am besten direkt ein GitHub-Issue im js-controller Projekt öffnen und zusätzlich hier im Thread posten. Je detaillierter die Angaben im Issue sind (genaue Fehlermeldungen/Logs, Infos zur OS- und Node.js-Umgebung sowie genaue Schritte zur Reproduktion des Problems), umso schneller können wir Fehler einkreisen und beheben.

      Wir wünschen allen viel Spaß beim Testen und vielen Dank für Eure Unterstützung!

      Ingo

      sunshower2 created this issue in frankjoke/ioBroker.km200

      closed km200 läuft unter Controller 4.0 bei mir nicht mehr #69

      sigi234 paul53 D Neuschwansteini 4 Replies Last reply Reply Quote 6
      • apollon77
        apollon77 last edited by apollon77

        FAQ

        Known Issues

        Aktuell sind folgende Themen bekannt, welche noch parallel bearbeitet werden:

        • Admin hat bei den "Host settings" noch keine Wahlmöglichkeit für "JSONL". Daher bitte den DB Typ aktuell nicht über Admin ändern! -> Fixed since Admin 5.3.0
        • Die "Migration zu JSONL"-Meldung im Admin kommt auch bei Neuinstallationen. Dies wird spätestens mit dem Stable-Release nicht mehr vorkommen.
        • Der "Rebuild"-Button in der Adapter-Kachel im Admin5 liefert einen Fehler bei der Ausführung. Der Button in Admin wird entfernt. -> Fixed since Admin 5.3.0

        Informationen zu pot. angezeigten Meldungen und Logs

        (info) "Sets unsupported"

        In MutliHost-Umgebungen wo noch nicht alle Hosts aktualisiert sind arbeitet eine Optimierung in einem Kompatibilitätsmodus. In diesem wird ggf vom js-controller und von Adaptern beim Start einmalig die Meldung "Sets unsupported" im Loglevel "info" geloggt. Diese verschwindet wenn alle Hosts auf js-controller 4.0+ sind.

        (warn) Object XXX is invalid: obj.common.min/max has an invalid type!

        Dies ist eine neue Prüfung, wie oben bereits erwähnt, welche prüft das der Minimum bzw Maximum Wert eines Objekts auch eine Zahl ist. Wenn diese Meldung kommt dann diese bitte per Issue an den Adapter-Entwickler weitergeben, das dies im Adapter behoben wird.

        "Ignoring Directory "benchmark.files" because officially not created as meta ob ject. Please remove directory!"

        Wenn bei der Inatallation des js-controller diese Meldung kommt:

        The following notifications happened during sync:
        - Ignoring Directory "benchmark.files" because officially not created as meta ob ject. Please remove directory!
        

        Bitte ein iob upload all ausführen. Falls Einträge von Adaptern enthalten sein sollten die nicht mehr installiert sind, dann können diese Dateien manuell gelöscht werden.

        Warning: Accessing non-existent property '...' of module exports inside circular dependency

        Wenn beim Ausführen von CLI Befehlen Meldungen wie die nachstehenden angezeigt werden so liegt dies an einer alten version der Library "mogodb" im System. Diese Meldungen kommen nicht vom js-controller Upgrade sondern von der Nutzung von Node.js 14+ und dieser Library. Diese wurde vom node-red Adapter ggf installiert.

        (node:2218) Warning: Accessing non-existent property 'count' of module exports inside circular dependency
        (Use `node --trace-warnings ...` to show where the warning was created)
        (node:2218) Warning: Accessing non-existent property 'findOne' of module exports inside circular dependency
        (node:2218) Warning: Accessing non-existent property 'remove' of module exports inside circular dependency
        (node:2218) Warning: Accessing non-existent property 'updateOne' of module exports inside circular dependency
        

        Wenn ein Update des node-red Adapters (bzw Uninstall falls nicht benötigt) nicht hilft dann bitte mit npm list mongodb (im iobroker Dir /opt/iobroker) rausfinden wo es herkommt. Falls etwas von "extranous" steht dann einfal per npm uninstall mongodb (im iobroker Dir /opt/iobroker) löschen.

        Eine Backitup Instanz wird automatisch erstellt

        Dies passiert weil Backitup für Neuinstallationen ein Standardadapter ist. Der kleine Nebeneffekt ist das, wenn noch keine Backitup Instanz existiert ABER der Adapter-Code auf einem Host installiert ist dann wird dort eine Instanz angelegt. Wer das nicht will kann diese manuell wider entfernen und dann aber am besten auch den Adapter deinstallieren. Dann passiert dies nicht noch einmal.

        Infos zum Thema "Rebuilds bei Node.js Aktualisierungen"

        Generell gilt das Node.JS Updates wie unter https://forum.iobroker.net/topic/44566/how-to-node-js-für-iobroker-richtig-updaten-2021-edition beschrieben funktionieren. Der js-controller 4.0 führt nur die automatisierten Rebuilds etwas anders aus als die 3.3.

        In der neuen Version versuchen wir zuerst generell alle Module neu zu erstellen. Das sollte alle Probleme auf einen Schlag lösen. Falls das (und ja da kann es Gründe geben) nicht funktioniert ist der zweite Versuch das wirklich betroffene NPM-Paket zu identifizieren (also z.B. direkt "serialport" o.ä.) und dieses neu zu kompilieren. Das hat deutlich weniger Nebeneffekte wie die bisherigen Versuche.

        Bitte hier Feedback geben wie es geht.

        FAQ zur DB Umstellung File -> JSONL

        Ich nutze Redis. Betrifft mich das?

        Wenn Du für beide Datenbanken einen Redis einsetzt dann nicht. Es ist nur relevant wenn eine oder beide DBs "File" sind.

        Was ist denn so besser an der "JSONL"-Datenbank anstelle "File"?

        Von der Funktionalität ist alles identisch! Die beiden Datenbanken unterscheiden sich nur darin wie die Daten gespeichert werden.

        Die File-DB schreibt hier alles in einem großen JSON-File regelmäßig - bei Objekten sind dies schnell mal 20MB. Dies kann durchaus viel I/O verursachen und ist vor allem bei SD-Karten-Basierten Systemen nicht optimal, weil es die Karte sehr belastet. Aber auch für SSDs ist dies nicht optimal. Zusätzlich besteht das Problem das ein Absturz beim Schreiben dazu führt das das ganze File defekt ist. ioBroker greift in diesen Fällen auf ein Backup-File zurück.

        JSONL arbeitet hier anders. Änderungen werden erst einmal nur an die Datei angehangen und - nur wenn nötig - wird dann das File "komprimiert" und so neu geschrieben. Dies erfolgt aber viel seltener als bei der File-DB.
        Für JSONL hat es @AlCalzone mal folgendermaßen zusammengefasst:
        ➕ JSONL ist resistenter. Ein kaputtes Byte in der DB macht nicht alles kaputt und ein Absturz beim Schreibvorgang sorgt nur dafür, dass die ausstehenden Änderungen verloren gehen, nicht alles.
        ➕ JSONL schont die SD-Karte durch weniger und kleinere Schreibvorgänge (nur wenn nötig).
        ➖ JSONL braucht zumindest phasenweise etwas mehr Platz (die DB ist bis auf Kompaktierungsvorgänge append-only)
        ➖ JSONL braucht etwas länger, wenn viele Objekte in kurzer Zeit geschrieben werden sollen (wobei meine letzten Tests nur noch Unterschiede im Rahmen der Standardabweichung ergeben haben)

        Wir denken das das neue Datenbank-Handling mehr Vorteile hat - vor allem für SD-Karten- und SSD-basierte Systeme.

        Was bedeutet es das die Datenbank jetzt jsonl ist?

        Im Normalfall bedeutet hies für den täglichen Betrieb nichts. Auch die Umstellung erfolg vollautomatisch im Rahmen des js-controller Updates.
        Ein iob status wird nach der Installation anstelle "file" jetzt "jsonl" anzeigen. Das wars auch schon. Backups über BackItUp oder iob backup und auch restores funktionieren weiterhin ohne Änderungen.

        WICHTIG: Durch die automatische Datenbankumstellung ist ein direkter Downgrade oder Backup Restore eines mit 4.0 erstellten Backups nur noch auf js-controller 3.3.x möglich! Für andere Downgrade Optionen bitte im nächsten Eintrag lesen. Ein Downgrade mit Redis als Datenbank ist problemlos weiterhin möglich!

        Die Datenfiles im iobroker-data Verzeichnis haben jetzt .jsonl am Ende und nicht mehr .json. Die letzten "file DB .json"-Files werden umbenannt und liegen noch im Verzeichnis mit der Endung ".migrated".

        Kann man die EInstellungen der JSONL ändern?

        Ja, auch die JSONL Datenbank hat einige Einstellungen (wie das "writeFileInterval" der File-DB früher). Üblicherweise muss da niemand Hand anlegen, weil die Defaults von uns bereits optimiert wurden.

        Wer dennoch schauen will finden unter https://github.com/ioBroker/ioBroker.js-controller/blob/master/packages/controller/conf/iobroker-dist.json#L53-L71 (Objects) bzw https://github.com/ioBroker/ioBroker.js-controller/blob/master/packages/controller/conf/iobroker-dist.json#L99-L117 die jeweiligen Default-Werte. Anpassungen können einfach in Eurer iobroker.json manuell gemacht werden.

        Wie kann ich doch auf js-controller 3.2 oder kleiner downgraden wenn "jsonl" der DB Typ ist?

        js-controller Versionen kleiner als 3.3.x hatten die nötigen Dateien für eine "jsonl" Datenbank nicht an Board. Daher ist ein direkter Downgrade nicht möglich weil dann die Daten nicht lesbar sind!

        Daher muss ZUERST (!!) unter js-controller 4.0 die Datenbank manuell zurück auf "file" migriert werden. Dies erfolgt per iob setup custom und dort bei der Abfrage des DB Typs file angeben. Alle weiteren Fragen beantworten und dann die Migration abwarten. Danach zeigt iob statuswieder "file" an. Dann kann ein Backup für den Restore in einer kleineren Version erstellt werden oder ein Downgrade via npm i iobroker.js-controller@version (Vorher ins ioBroker Verzeichnis wechseln!) auf die gewünschte Version erfolgen.

        FAQ zu Redis "Sets" Optimierungen

        Für Redis-basierte Systeme bringt der js-controller 4.0 einige Optimierungen mit. Eine davon nutzt spezielle interne Datenstrukturen, die konsistent initialisiert werden müssen. Aufgrund einiger Edge Cases wird diese Optimierung daher automatisch nur für Single-Host Redis-Systeme genutzt. Wer auch im Multi-Host-Umfeld mit Redis für Objekte von den Optimierungen profitieren möchte kann diese manuell aktivieren. VORAB müssen aber alle Hosts auf js-controller 4.0 sein und soweit alles gut sein das es keinen partiellen Downgrade mehr gibt.

        Dann können die Optimierungen über iob object activateSets aktiviert werden, nachdem ALLE Hosts beendet wurden. So wird sichergestellt das die Datenstrukturen konsistent initialisiert werden können. Danach können alle Hosts wieder gestartet werden. Eine Deaktivierung der Optimierungen ist per iob object deactivateSets ebenso möglich.

        arteck K S 3 Replies Last reply Reply Quote 8
        • arteck
          arteck Developer Most Active @apollon77 last edited by

          endlich..

          1 Reply Last reply Reply Quote 0
          • K
            Kusi @apollon77 last edited by Kusi

            @apollon77
            Fehlermeldung beim Update:

            Update js-controller from @3.3.22 to @4.0.3
            NPM version: 6.14.15
            npm install iobroker.js-controller@4.0.3 --loglevel error --unsafe-perm --prefix "/opt/iobroker" (System call)
            In file included from ../../nan/nan.h:58,
                             from ../src/unix_dgram.cc:5:
            /home/iobroker/.cache/node-gyp/14.18.2/include/node/node.h:787:7: warning: cast between incompatible function types from ‘void ()(v8::Local<v8::Object>)’ to ‘node::addon_register_func’ {aka ‘void ()(v8::Local<v8::Object>, v8::Local<v8::Value>, void*)’} [-Wcast-function-type]
              787 |       (node::addon_register_func) (regfunc),                          \
                  |       ^~~~~~~~~~~~~
            /home/iobroker/.cache/node-gyp/14.18.2/include/node/node.h:821:3: note: in expansion of macro ‘NODE_MODULE_X’
              821 |   NODE_MODULE_X(modname, regfunc, NULL, 0)  // NOLINT (readability/null_usage)
                  |   ^~~~~
            ../src/unix_dgram.cc:404:1: note: in expansion of macro ‘NODE_MODULE’
              404 | NODE_MODULE(unix_dgram, Initialize)
                  | ^~~~~
            Server Objects 127.0.0.1:36192 Error from InMemDB: Error: GET-UNSUPPORTED for namespace cfg.: Data=["meta.objects.features.useSets"]
            Server States 127.0.0.1:60572 Error from InMemDB: Error: GET-UNSUPPORTED for namespace meta.: Data=["meta.states.protocolVersion"]
            Server Objects 127.0.0.1:36192 Error from InMemDB: Error: GET-UNSUPPORTED for namespace cfg.: Data=["meta.objects.protocolVersion"]
            Server States 127.0.0.1:60574 Error from InMemDB: Error: PSUBSCRIBE-UNSUPPORTED for namespace meta.: Data=["meta.*"]
            Server Objects 127.0.0.1:36192 Error from InMemDB: Error: Unknown LUA script load
            npm ERR! code ELIFECYCLE
            npm ERR! errno 22
            npm ERR! iobroker.js-controller@4.0.3 install: `node iobroker.js setup first`
            npm ERR! Exit status 22
            npm ERR!
            npm ERR! Failed at the iobroker.js-controller@4.0.3 install script.
            npm ERR! This is probably not a problem with npm. There is likely additional logging output above.
            
            npm ERR! A complete log of this run can be found in:
            npm ERR!     /home/iobroker/.npm/_logs/2022-02-05T21_26_27_051Z-debug.log
            host.ioBroker Cannot install iobroker.js-controller@4.0.3: 22
            }
            

            Fehlermeldung beim Fix:

            kusi@ioBroker:~$ iobroker fix
            library: loaded
            Library version=2021-12-27
            ioBroker is not installed in /opt/iobroker! Cannot fix anything...
            kusi@ioBroker:~$ iobroker start
            kusi@ioBroker:~$ iobroker status
            internal/modules/cjs/loader.js:905
              throw err;
              ^
            
            Error: Cannot find module '/opt/iobroker/node_modules/iobroker.js-controller/iobroker.js'
                at Function.Module._resolveFilename (internal/modules/cjs/loader.js:902:15)
                at Function.Module._load (internal/modules/cjs/loader.js:746:27)
                at Function.executeUserEntryPoint [as runMain] (internal/modules/run_main.js:76:12)
                at internal/main/run_main_module.js:17:47 {
              code: 'MODULE_NOT_FOUND',
              requireStack: []
            }
            

            Fehlermeldung beim Status:

            kusi@ioBroker:~$ iobroker status
            internal/modules/cjs/loader.js:905
              throw err;
              ^
            
            Error: Cannot find module '/opt/iobroker/node_modules/iobroker.js-controller/iobroker.js'
                at Function.Module._resolveFilename (internal/modules/cjs/loader.js:902:15)
                at Function.Module._load (internal/modules/cjs/loader.js:746:27)
                at Function.executeUserEntryPoint [as runMain] (internal/modules/run_main.js:76:12)
                at internal/main/run_main_module.js:17:47 {
              code: 'MODULE_NOT_FOUND',
              requireStack: []
            }
            
            apollon77 1 Reply Last reply Reply Quote 0
            • apollon77
              apollon77 @Kusi last edited by

              @kusi Ok, schauen wir. Für dich zum fixen:

              Mach einen direkten npm i iobroker.js-controller@4.0.3 befehl bitte ... damit sollte es wieder gehen

              K 1 Reply Last reply Reply Quote 0
              • K
                Kusi @apollon77 last edited by

                @apollon77 sagte in js-controller 4.0 jetzt im BETA/LATEST!:

                npm i iobroker.js-controller@4.0.3

                kusi@ioBroker:~$ npm i iobroker.js-controller@4.0.3
                
                > iobroker.js-controller@4.0.3 preinstall /home/kusi/node_modules/iobroker.js-controller
                > node lib/preinstallCheck.js
                
                NPM version: 6.14.15
                
                > iobroker.js-controller@4.0.3 install /home/kusi/node_modules/iobroker.js-controller
                > node iobroker.js setup first
                
                Successfully migrated 14 objects to Redis Sets
                object system.licenses created
                object _design/system updated
                {
                  "defaultPrivate": "-----BEGIN RSA PRIVATE KEY-----***-----END RSA PRIVATE KEY-----\r\n",
                  "defaultPublic": "-----BEGIN CERTIFICATE-----***-----END CERTIFICATE-----\r\n"
                }
                Update certificate defaultPrivate
                The object "system.certificates" was updated successfully.
                Update certificate defaultPublic
                The object "system.certificates" was updated successfully.
                Renamed repository "default to "stable"
                Renamed repository "latest to "beta"
                States DB type migrated from "file" to "jsonl"
                Objects DB type migrated from "file" to "jsonl"
                 Could not read notifications.json: /home/kusi/iobroker-data/notifications.json: ENOENT: no such file or directory, open '/home/kusi/iobroker-data/notifications.json'
                ioBroker configuration updated
                npm WARN saveError ENOENT: no such file or directory, open '/home/kusi/package.json'
                npm WARN enoent ENOENT: no such file or directory, open '/home/kusi/package.json'
                npm WARN kusi No description
                npm WARN kusi No repository field.
                npm WARN kusi No README data
                npm WARN kusi No license field.
                npm WARN optional SKIPPING OPTIONAL DEPENDENCY: fsevents@2.3.2 (node_modules/fsevents):
                npm WARN notsup SKIPPING OPTIONAL DEPENDENCY: Unsupported platform for fsevents@2.3.2: wanted {"os":"darwin","arch":"any"} (current: {"os":"linux","arch":"x64"})
                
                + iobroker.js-controller@4.0.3
                added 73 packages from 29 contributors, updated 2 packages and audited 708 packages in 22.432s
                
                24 packages are looking for funding
                  run `npm fund` for details
                
                found 55 vulnerabilities (15 low, 7 moderate, 33 high)
                  run `npm audit fix` to fix them, or `npm audit` for details
                
                

                "RSA Private Key" und "Certificate" habe ich entfernt. Denke dass dies okay ist?

                Meldung auf den Status:

                kusi@ioBroker:~$ iobroker status
                internal/modules/cjs/loader.js:905
                  throw err;
                  ^
                
                Error: Cannot find module '/opt/iobroker/node_modules/iobroker.js-controller/iobroker.js'
                    at Function.Module._resolveFilename (internal/modules/cjs/loader.js:902:15)
                    at Function.Module._load (internal/modules/cjs/loader.js:746:27)
                    at Function.executeUserEntryPoint [as runMain] (internal/modules/run_main.js:76:12)
                    at internal/main/run_main_module.js:17:47 {
                  code: 'MODULE_NOT_FOUND',
                  requireStack: []
                }
                
                apollon77 Thomas Braun 2 Replies Last reply Reply Quote 0
                • apollon77
                  apollon77 @Kusi last edited by

                  @kusi Ok, in welchem verzeichnis haste das denn ausgeführt? Sollte /opt/iobroker sein 🙂

                  K 1 Reply Last reply Reply Quote 0
                  • Thomas Braun
                    Thomas Braun Most Active @Kusi last edited by

                    @kusi

                    Als Beta-Tester sollte man nicht in
                    kusi@ioBroker:~$
                    stehen, wenn man seine Installation repariert.

                    1 Reply Last reply Reply Quote 0
                    • K
                      Kusi @apollon77 last edited by

                      @apollon77 sagte in js-controller 4.0 jetzt im BETA/LATEST!:

                      Sollte /opt/iobroker sein

                      @Thomas-Braun

                      Daran lag es tatsächlich. Dass dies eine Rolle spielt, habe ich ehrlich gesagt nicht gewusst...

                      Thomas Braun 1 Reply Last reply Reply Quote 0
                      • Thomas Braun
                        Thomas Braun Most Active @Kusi last edited by Thomas Braun

                        @kusi Tut es. Und das sollte eigentlich Beta-Tester-Grundwissen sein.
                        Jetzt hast du das im Home (mit ~ abgekürzt) des Users kusi installiert

                        K 1 Reply Last reply Reply Quote 0
                        • K
                          Kusi @Thomas Braun last edited by

                          @thomas-braun sagte in js-controller 4.0 jetzt im BETA/LATEST!:

                          Beta-Tester-Grundwissen

                          Vielen Dank für deine und @apollon77 ´s Hilfe.
                          Ich muss zugestehen dass ich das Beta-Tester-Grundwissen (noch) nicht habe.
                          Warum ich die Beta-Version installiert habe, dafür gibt es keinen intelligenten Grund, eher aus Blödsinn. Neugier.

                          Jetzt hast du das im Home (mit ~ abgekürzt) des Users kusi installiert

                          Soll ich etwas löschen?
                          Ein Backup der kompletten VM, sowie ioBroker habe ich natürlich gemacht.

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

                            @kusi DU solltest in deinem Home jetzt ein node_modules haben und ggf paar Extra Files ... kannste löschen

                            K 1 Reply Last reply Reply Quote 0
                            • K
                              Kusi @apollon77 last edited by Kusi

                              @apollon77 sagte in js-controller 4.0 jetzt im BETA/LATEST!:

                              deinem Home jetzt ein node_modules haben

                              70609797-3e8d-4275-912a-fef7bfc350ea-image.png
                              Ja, habe ich, wobei ich ein Teil schon vorher hatte, da ich node_modules für die Neeo-Remote installieren musste.

                              Soll ich den kompletten Inhalt von /home/kusi löschen und nötigenfalls meine node_module neu installieren?

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

                                @kusi Wie du magst. SOnst hast da halt mehr drin. Aber ja besser aufäumen

                                F K 2 Replies Last reply Reply Quote 0
                                • F
                                  fastfoot @apollon77 last edited by

                                  @apollon77 auch hier etwas holpriges Upgrade auf einem brandneuen System (Docker mit latest-v6 image).

                                  • Grundsetup in der GUI
                                  • iob fix zum Sicherstellen dass die folgenden Fehler nicht von evtl. vorh. Fehlern kommen
                                  • iob update && iob upgrade self bringt gleichen Fehler wie hier
                                  • nach erfolgreichem npm i iobroker.js-controller@4.0.3 gibts beim Neustart einen permission Fehler, Admin startet nicht
                                  • nach iob fix läuft es nun fehlerfrei

                                  Gratulation zum Release!

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

                                    Danke arbeite bereits am relevanten Fix. Das Problem ist genau das eine was wir vorher nicht testen konnten 🙂 4.0.4 kommt heute Abend noch.

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

                                      @apollon77 Was konnte denn im Vorfeld nicht getestet werden?

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

                                        @feuersturm "iob upgrade self" ... Das tickt minimal anders wie ein direkter npm Install

                                        1 Reply Last reply Reply Quote 0
                                        • K
                                          Kusi @apollon77 last edited by Kusi

                                          @apollon77 sagte in js-controller 4.0 jetzt im BETA/LATEST!:

                                          Aber ja besser aufäumen

                                          erledigt, vielen Dank...

                                          Sollte /opt/iobroker sein

                                          Müssen die Befehle

                                          iobroker update
                                          iobroker upgrade self
                                          

                                          immer im obigen Verzeichnis ausgeführt werden?

                                          apollon77 1 Reply Last reply Reply Quote 0
                                          • E
                                            e-i-k-e last edited by e-i-k-e

                                            Master/Slave System, redis/redis, node 14.19.0

                                            Ich habe testweiße nur den Master auf 4.0.3 hochgezogen, der Rest läuft auf 3.3.22.

                                            Alle Adapter sind grün.

                                            Erhalte nur lediglich folgendes im log:

                                            zigbee.0	2022-02-06 00:09:40.269	warn	(135012) A 60a423fffe7ddd1d 0x60a423fffe7ddd1d
                                            cloud.0	2022-02-06 00:09:36.145	error	(135399) Cannot activate admin.2 for cloud, because authentication is enabled. Please create extra instance for cloud
                                            host.ioBroker-Rock	2022-02-06 00:09:05.905	error	instance system.adapter.daswetter.0 terminated with code 15 (UNKNOWN_ERROR)
                                            cloud.0	2022-02-06 00:09:05.794	error	(135399) Cannot activate admin.2 for cloud, because authentication is enabled. Please create extra instance for cloud
                                            sainlogic.0	2022-02-06 00:09:02.426	warn	(135440) slow connection to objects DB. Still waiting ...
                                            daswetter.0	2022-02-06 00:09:00.082	error	(135237) exception in await insertIntoList [Error: Could not check object existence of daswetter.0.NextDaysDetailed.Location_1.Day_4.symbol_value2: DB closed]
                                            daswetter.0	2022-02-06 00:09:00.080	error	(135237) exception in await insertIntoList [Error: Could not check object existence of daswetter.0.NextDaysDetailed.Location_1.Day_4.symbol_desc2: DB closed]
                                            daswetter.0	2022-02-06 00:09:00.079	error	(135237) exception in await insertIntoList [Error: Could not check object existence of daswetter.0.NextDaysDetailed.Location_1.Day_4.day_value: DB closed]
                                            daswetter.0	2022-02-06 00:09:00.078	error	(135237) exception in await insertIntoList [Error: Could not check object existence of daswetter.0.NextDaysDetailed.Location_1.Day_4.day_name: DB closed]
                                            daswetter.0	2022-02-06 00:09:00.077	error	(135237) exception in await insertIntoList [Error: Could not check object existence of daswetter.0.NextDaysDetailed.Location_1.Day_4: DB closed]
                                            daswetter.0	2022-02-06 00:09:00.076	error	(135237) exception in await insertIntoList [Error: Could not check object existence of daswetter.0.NextDaysDetailed.Location_1.Day_3.Hour_8.windchill_value: DB closed]
                                            daswetter.0	2022-02-06 00:09:00.074	error	(135237) exception in await insertIntoList [Error: Could not check object existence of daswetter.0.NextDaysDetailed.Location_1.Day_3.Hour_8.snowline_value: DB closed]
                                            daswetter.0	2022-02-06 00:09:00.073	error	(135237) exception in await insertIntoList [Error: Could not check object existence of daswetter.0.NextDaysDetailed.Location_1.Day_3.Hour_8.clouds_value: DB closed]
                                            daswetter.0	2022-02-06 00:09:00.072	error	(135237) exception in await insertIntoList [Error: Could not check object existence of daswetter.0.NextDaysDetailed.Location_1.Day_3.Hour_8.pressure_value: DB closed]
                                            daswetter.0	2022-02-06 00:09:00.068	error	(135237) exception in await insertIntoList [Error: Could not check object existence of daswetter.0.NextDaysDetailed.Location_1.Day_3.Hour_8.humidity_value: DB closed]
                                            daswetter.0	2022-02-06 00:09:00.066	error	(135237) exception in await insertIntoList [Error: Could not check object existence of daswetter.0.NextDaysDetailed.Location_1.Day_3.Hour_8.rain_value: DB closed]
                                            daswetter.0	2022-02-06 00:09:00.064	error	(135237) exception in await insertIntoList [Error: Could not check object existence of daswetter.0.NextDaysDetailed.Location_1.Day_3.Hour_8.windgusts_value: DB closed]
                                            daswetter.0	2022-02-06 00:09:00.062	error	(135237) exception in await insertIntoList [Error: Could not check object existence of daswetter.0.NextDaysDetailed.Location_1.Day_3.Hour_8.windIconURL: DB closed]
                                            daswetter.0	2022-02-06 00:09:00.061	error	(135237) exception in await insertIntoList [Error: Could not check object existence of daswetter.0.NextDaysDetailed.Location_1.Day_3.Hour_8.wind_value: DB closed]
                                            daswetter.0	2022-02-06 00:09:00.059	error	(135237) exception in await insertIntoList [Error: Could not check object existence of daswetter.0.NextDaysDetailed.Location_1.Day_3.Hour_8.wind_dir: DB closed]
                                            daswetter.0	2022-02-06 00:09:00.058	error	(135237) exception in await insertIntoList [Error: Could not check object existence of daswetter.0.NextDaysDetailed.Location_1.Day_3.Hour_8.wind_symbol: DB closed]
                                            daswetter.0	2022-02-06 00:09:00.056	error	(135237) exception in await insertIntoList [Error: Could not check object existence of daswetter.0.NextDaysDetailed.Location_1.Day_3.Hour_8.wind_symbolB: DB closed]
                                            daswetter.0	2022-02-06 00:09:00.052	error	(135237) exception in await insertIntoList [Error: Could not check object existence of daswetter.0.NextDaysDetailed.Location_1.Day_3.Hour_8.iconURL: DB closed]
                                            daswetter.0	2022-02-06 00:09:00.038	error	(135237) exception in await insertIntoList [Error: DB closed]
                                            daswetter.0	2022-02-06 00:09:00.037	warn	(135237) Could not perform strict object check of state daswetter.0.NextDaysDetailed.Location_1.Day_3.Hour_8.symbol_value: Connection is closed.
                                            daswetter.0	2022-02-06 00:08:59.926	error	(135237) exception in await insertIntoList [Error: DB closed]
                                            discovergy.0	2022-02-06 00:08:59.820	error	(135380) State type : printedFullSerialNumber unknown, send this information to the developer ==> printedFullSerialNumber : "1ESYxxxxx"
                                            dwd.0	2022-02-06 00:08:59.548	warn	(135429) slow connection to objects DB. Still waiting ...
                                            daswetter.0	2022-02-06 00:08:59.375	warn	(135237) Terminated (UNKNOWN_ERROR): Without reason
                                            daswetter.0	2022-02-06 00:08:59.369	error	(135237) force terminate
                                            device-reminder.0	2022-02-06 00:08:54.654	warn	(135418) slow connection to objects DB. Still waiting ...
                                            cloud.0	2022-02-06 00:08:47.181	warn	(135399) slow connection to objects DB. Still waiting ...
                                            discovergy.0	2022-02-06 00:08:41.292	warn	(135380) slow connection to objects DB. Still waiting ...
                                            shuttercontrol.0	2022-02-06 00:08:37.694	warn	(135323) This object will not be created in future versions. Please report this to the developer.
                                            shuttercontrol.0	2022-02-06 00:08:37.693	warn	(135323) Object shuttercontrol.0.info.Azimut is invalid: Default value has to be type "number" but received type "string"
                                            shuttercontrol.0	2022-02-06 00:08:37.596	warn	(135323) This object will not be created in future versions. Please report this to the developer.
                                            shuttercontrol.0	2022-02-06 00:08:37.595	warn	(135323) Object shuttercontrol.0.info.Elevation is invalid: Default value has to be type "number" but received type "string"
                                            
                                            cloud.0	2022-02-06 00:09:36.145	error	(135399) Cannot activate admin.2 for cloud, because authentication is enabled. Please create extra instance for cloud
                                            host.ioBroker-Rock	2022-02-06 00:09:05.905	error	instance system.adapter.daswetter.0 terminated with code 15 (UNKNOWN_ERROR)
                                            cloud.0	2022-02-06 00:09:05.794	error	(135399) Cannot activate admin.2 for cloud, because authentication is enabled. Please create extra instance for cloud
                                            discovergy.0	2022-02-06 00:08:59.820	error	(135380) State type : printedFullSerialNumber unknown, send this information to the developer ==> printedFullSerialNumber : "1ESYxxxxxxx"
                                            daswetter.0	2022-02-06 00:08:59.375	warn	(135237) Terminated (UNKNOWN_ERROR): Without reason
                                            daswetter.0	2022-02-06 00:08:59.369	error	(135237) force terminate
                                            shuttercontrol.0	2022-02-06 00:08:37.694	warn	(135323) This object will not be created in future versions. Please report this to the developer.
                                            shuttercontrol.0	2022-02-06 00:08:37.693	warn	(135323) Object shuttercontrol.0.info.Azimut is invalid: Default value has to be type "number" but received type "string"
                                            shuttercontrol.0	2022-02-06 00:08:37.596	warn	(135323) This object will not be created in future versions. Please report this to the developer.
                                            shuttercontrol.0	2022-02-06 00:08:37.595	warn	(135323) Object shuttercontrol.0.info.Elevation is invalid: Default value has to be type "number" but received type "string"
                                            yamaha.0	2022-02-06 00:07:17.065	warn	(135059) This object will not be created in future versions. Please report this to the developer.
                                            yamaha.0	2022-02-06 00:07:17.065	warn	(135059) Object yamaha.0.powerAllZones is invalid: obj.common.min has an invalid type! Expected "number", received "boolean"
                                            yamaha.0	2022-02-06 00:07:16.996	warn	(135059) This object will not be created in future versions. Please report this to the developer.
                                            yamaha.0	2022-02-06 00:07:16.996	warn	(135059) Object yamaha.0.zone4 is invalid: obj.common.min has an invalid type! Expected "number", received "boolean"
                                            yamaha.0	2022-02-06 00:07:16.945	warn	(135059) This object will not be created in future versions. Please report this to the developer.
                                            yamaha.0	2022-02-06 00:07:16.944	warn	(135059) Object yamaha.0.zone3 is invalid: obj.common.min has an invalid type! Expected "number", received "boolean"
                                            yamaha.0	2022-02-06 00:07:16.908	warn	(135059) This object will not be created in future versions. Please report this to the developer.
                                            yamaha.0	2022-02-06 00:07:16.907	warn	(135059) Object yamaha.0.zone2 is invalid: obj.common.min has an invalid type! Expected "number", received "boolean"
                                            yamaha.0	2022-02-06 00:07:16.879	warn	(135059) This object will not be created in future versions. Please report this to the developer.
                                            yamaha.0	2022-02-06 00:07:16.879	warn	(135059) Object yamaha.0.zone1 is invalid: obj.common.min has an invalid type! Expected "number", received "boolean"
                                            yamaha.0	2022-02-06 00:07:16.492	warn	(135059) This object will not be created in future versions. Please report this to the developer.
                                            yamaha.0	2022-02-06 00:07:16.491	warn	(135059) Object yamaha.0.pureDirect is invalid: obj.common.min has an invalid type! Expected "number", received "boolean"
                                            yamaha.0	2022-02-06 00:07:16.436	warn	(135059) This object will not be created in future versions. Please report this to the developer.
                                            yamaha.0	2022-02-06 00:07:16.436	warn	(135059) Object yamaha.0.hdmiOut2 is invalid: obj.common.min has an invalid type! Expected "number", received "boolean"
                                            yamaha.0	2022-02-06 00:07:16.341	warn	(135059) This object will not be created in future versions. Please report this to the developer.
                                            yamaha.0	2022-02-06 00:07:16.341	warn	(135059) Object yamaha.0.hdmiOut1 is invalid: obj.common.min has an invalid type! Expected "number", received "boolean"
                                            yamaha.0	2022-02-06 00:07:16.261	warn	(135059) This object will not be created in future versions. Please report this to the developer.
                                            yamaha.0	2022-02-06 00:07:16.260	warn	(135059) Object yamaha.0.Commands.partyModeVolumeDown is invalid: obj.common.min has an invalid type! Expected "number", received "boolean"
                                            yamaha.0	2022-02-06 00:07:16.168	warn	(135059) This object will not be created in future versions. Please report this to the developer.
                                            yamaha.0	2022-02-06 00:07:16.167	warn	(135059) Object yamaha.0.Commands.partyModeVolumeUp is invalid: obj.common.min has an invalid type! Expected "number", received "boolean"
                                            yamaha.0	2022-02-06 00:07:16.100	warn	(135059) This object will not be created in future versions. Please report this to the developer.
                                            yamaha.0	2022-02-06 00:07:16.099	warn	(135059) Object yamaha.0.partyMode is invalid: obj.common.min has an invalid type! Expected "number", received "boolean"
                                            yamaha.0	2022-02-06 00:07:15.988	warn	(135059) This object will not be created in future versions. Please report this to the developer.
                                            yamaha.0	2022-02-06 00:07:15.987	warn	(135059) Object yamaha.0.adaptiveDRC is invalid: obj.common.min has an invalid type! Expected "number", received "boolean"
                                            yamaha.0	2022-02-06 00:07:15.871	warn	(135059) This object will not be created in future versions. Please report this to the developer.
                                            yamaha.0	2022-02-06 00:07:15.870	warn	(135059) Object yamaha.0.extraBass is invalid: obj.common.min has an invalid type! Expected "number", received "boolean"
                                            yamaha.0	2022-02-06 00:07:15.753	warn	(135059) This object will not be created in future versions. Please report this to the developer.
                                            yamaha.0	2022-02-06 00:07:15.753	warn	(135059) Object yamaha.0.YPAOVolume is invalid: obj.common.min has an invalid type! Expected "number", received "boolean"
                                            yamaha.0	2022-02-06 00:07:15.685	warn	(135059) This object will not be created in future versions. Please report this to the developer.
                                            yamaha.0	2022-02-06 00:07:15.685	warn	(135059) Object yamaha.0.Commands.skip is invalid: obj.common.min has an invalid type! Expected "number", received "boolean"
                                            yamaha.0	2022-02-06 00:07:15.621	warn	(135059) This object will not be created in future versions. Please report this to the developer.
                                            yamaha.0	2022-02-06 00:07:15.618	warn	(135059) Object yamaha.0.Commands.rewind is invalid: obj.common.min has an invalid type! Expected "number", received "boolean"
                                            yamaha.0	2022-02-06 00:07:15.587	warn	(135059) This object will not be created in future versions. Please report this to the developer.
                                            yamaha.0	2022-02-06 00:07:15.587	warn	(135059) Object yamaha.0.Commands.skip is invalid: obj.common.min has an invalid type! Expected "number", received "boolean"
                                            yamaha.0	2022-02-06 00:07:15.543	warn	(135059) This object will not be created in future versions. Please report this to the developer.
                                            yamaha.0	2022-02-06 00:07:15.541	warn	(135059) Object yamaha.0.Commands.pause is invalid: obj.common.min has an invalid type! Expected "number", received "boolean"
                                            yamaha.0	2022-02-06 00:07:15.495	warn	(135059) This object will not be created in future versions. Please report this to the developer.
                                            yamaha.0	2022-02-06 00:07:15.492	warn	(135059) Object yamaha.0.Commands.stop is invalid: obj.common.min has an invalid type! Expected "number", received "boolean"
                                            yamaha.0	2022-02-06 00:07:15.448	warn	(135059) This object will not be created in future versions. Please report this to the developer.
                                            yamaha.0	2022-02-06 00:07:15.447	warn	(135059) Object yamaha.0.refresh is invalid: obj.common.min has an invalid type! Expected "number", received "boolean"
                                            yamaha.0	2022-02-06 00:07:15.398	warn	(135059) This object will not be created in future versions. Please report this to the developer.
                                            yamaha.0	2022-02-06 00:07:15.397	warn	(135059) Object yamaha.0.power is invalid: obj.common.min has an invalid type! Expected "number", received "boolean"
                                            yamaha.0	2022-02-06 00:07:15.356	warn	(135059) This object will not be created in future versions. Please report this to the developer.
                                            yamaha.0	2022-02-06 00:07:15.356	warn	(135059) Object yamaha.0.mute is invalid: obj.common.min has an invalid type! Expected "number", received "boolean"
                                            yamaha.0	2022-02-06 00:07:15.129	warn	(135059) This object will not be created in future versions. Please report this to the developer.
                                            yamaha.0	2022-02-06 00:07:15.128	warn	(135059) Object yamaha.0.Commands.toggleMute is invalid: Default value has to be type "boolean" but received type "number"
                                            zigbee.0	2022-02-06 00:07:05.605	warn	(135012) DeviceAvailability:Failed to ping 0xa4c138b854f91e6c TS130F
                                            synology.0	2022-02-06 00:07:02.580	warn	(135023) This object will not be created in future versions. Please report this to the developer.
                                            synology.0	2022-02-06 00:07:02.579	warn	(135023) Object synology.0.SurveillanceStation.getSnapshotCamera is invalid: Default value has to be type "string" but received type "number"
                                            
                                            
                                            apollon77 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

                                            955
                                            Online

                                            31.6k
                                            Users

                                            79.4k
                                            Topics

                                            1.3m
                                            Posts

                                            70
                                            747
                                            145829
                                            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