NEWS
Probleme beim Upgrade
-
@integer63 Aber wenn Du aus git einen Adapter installierst, kannst Du davon ausgehen, dass irgendwas klemmt....
Mach ein Backup; dann Node-Update, js-controller-update und dann siehste Du wo es hakt. das einzige, was ich so mitbekommen habe ist, dass der sonos wohl nicht mehr richtig läuft! -
Ja, ich weiß Und ich werde es jetzt einfach machen ... da ich kein LINUX Experte bin, eine Frage vorweg: muss ich bei einem Master/Slave ioBroker System etwas beachten, oder kann ich den Slave einfach schon mal updaten und den Master so wie er ist, erstmal laufen lassen? Also was node angeht.
-
@integer63 Oh, dann bitte erst lesen! Master/Slave in bestimmter Richtung updaten!
-
@integer63 Wie ich das grade gelesen habe, erst Slave , dann Master.... aber keine Garantie dafür
-
-
-
Also, ich weiß, wenn man den js-controller updaten möchte, man auf die Reihenfolge achten muss. Aber bei node spielt das glaube ich erstmal keine Rolle - kann das einer bestätigen?
In der Zwischenzeit habe ich schon mal node auf dem Slave upgedatet (auf 12) - lief auch alles fast ohne Fehlermeldungen durch. ioBroker konnte ich wieder starten, aber die Fehlermeldung "Error: api.err.Invalid" ist immer noch da.
Meine Umgebung nach dem Update auf dem Slave:
-
@integer63 Das ist dann mit js-controller 3.1.3 weg.
Da e da aber auch wieder Probleme zu geben scheint, kommt gleich irgendwann die 3.1.4 raus -
@Homoran Da kann ich jetzt leider nicht nachsehen, da ich noch am kämpfen mit meinem Master bin Da das node Update auf dem Slave so gut gelaufen ist, habe ich auch gleich den Master hinterher geschoben - leider hagelt es hier nur so von Fehlermeldungen beim npm rebuild:
In file included from /usr/include/c++/6/cassert:44:0, from /root/.cache/node-gyp/12.16.3/include/node/node_object_wrap.h:26, from ../../nan/nan.h:55, from ../src/binding.cc:3: ../../nan/nan_object_wrap.h: In destructor ‘virtual Nan::ObjectWrap::~ObjectWrap()’: ../../nan/nan_object_wrap.h:24:25: error: ‘class Nan::Persistent<v8::Object>’ has no member named ‘IsNearDeath’ assert(persistent().IsNearDeath()); ^ ../../nan/nan_object_wrap.h: In static member function ‘static void Nan::ObjectWrap::WeakCallback(const v8::WeakCallbackInfo<Nan::ObjectWrap>&)’: ../../nan/nan_object_wrap.h:127:26: error: ‘class Nan::Persistent<v8::Object>’ has no member named ‘IsNearDeath’ assert(wrap->handle_.IsNearDeath()); ^ ../src/binding.cc: At global scope: ../src/binding.cc:67:17: error: expected ‘)’ before ‘<’ token Magic(Handle<Object> buffer, int flags) { ^ ../src/binding.cc:387:28: error: ‘Handle’ has not been declared static void Initialize(Handle<Object> target) { ^~~~~~ ../src/binding.cc:387:34: error: expected ‘,’ or ‘...’ before ‘<’ token static void Initialize(Handle<Object> target) { ^ ../src/binding.cc: In static member function ‘static void Magic::New(const Nan::FunctionCallbackInfo<v8::Value>&)’: ../src/binding.cc:102:45: error: no matching function for call to ‘v8::Value::Int32Value()’ magic_flags = args[1]->Int32Value(); ^ In file included from /root/.cache/node-gyp/12.16.3/include/node/node.h:67:0, from ../src/binding.cc:1: /root/.cache/node-gyp/12.16.3/include/node/v8.h:2709:40: note: candidate: v8::Maybe<int> v8::Value::Int32Value(v8::Local<v8::Context>) const V8_WARN_UNUSED_RESULT Maybe<int32_t> Int32Value(Local<Context> context) const; ^~~~~~~~~~ /root/.cache/node-gyp/12.16.3/include/node/v8.h:2709:40: note: candidate expects 1 argument, 0 provided ../src/binding.cc:109:51: error: no matching function for call to ‘v8::Value::ToString()’ String::Utf8Value str(args[0]->ToString()); ^ In file included from /root/.cache/node-gyp/12.16.3/include/node/node.h:67:0, from ../src/binding.cc:1: /root/.cache/node-gyp/12.16.3/include/node/v8.h:2668:44: note: candidate: v8::MaybeLocal<v8::String> v8::Value::ToString(v8::Local<v8::Context>) const V8_WARN_UNUSED_RESULT MaybeLocal<String> ToString( ^~~~~~~~ /root/.cache/node-gyp/12.16.3/include/node/v8.h:2668:44: note: candidate expects 1 argument, 0 provided In file included from /root/.cache/node-gyp/12.16.3/include/node/v8-internal.h:14:0, from /root/.cache/node-gyp/12.16.3/include/node/v8.h:27, from /root/.cache/node-gyp/12.16.3/include/node/node.h:67, from ../src/binding.cc:1: /root/.cache/node-gyp/12.16.3/include/node/v8.h:2684:31: note: candidate: v8::Local<v8::String> v8::Value::ToString(v8::Isolate*) const Local<String> ToString(Isolate* isolate) const); ^ /root/.cache/node-gyp/12.16.3/include/node/v8config.h:328:3: note: in definition of macro ‘V8_DEPRECATED’ declarator __attribute__((deprecated(message))) ^~~~~~~~~~ /root/.cache/node-gyp/12.16.3/include/node/v8.h:2684:31: note: candidate expects 1 argument, 0 provided Local<String> ToString(Isolate* isolate) const); ^ /root/.cache/node-gyp/12.16.3/include/node/v8config.h:328:3: note: in definition of macro ‘V8_DEPRECATED’ declarator __attribute__((deprecated(message))) ^~~~~~~~~~ ../src/binding.cc:113:60: error: no matching function for call to ‘Magic::Magic(v8::Local<v8::Object>, int&)’ obj = new Magic(args[0].As<Object>(), magic_flags); ^ ../src/binding.cc:50:5: note: candidate: Magic::Magic(const char*, int) Magic(const char* path, int flags) { ^~~~~ ../src/binding.cc:50:5: note: no known conversion for argument 1 from ‘v8::Local<v8::Object>’ to ‘const char*’ ../src/binding.cc:43:7: note: candidate: Magic::Magic(const Magic&) class Magic : public ObjectWrap { ^~~~~ ../src/binding.cc:43:7: note: candidate expects 1 argument, 2 provided ../src/binding.cc:115:45: error: no matching function for call to ‘v8::Value::Int32Value()’ magic_flags = args[0]->Int32Value(); ^ In file included from /root/.cache/node-gyp/12.16.3/include/node/node.h:67:0, from ../src/binding.cc:1: /root/.cache/node-gyp/12.16.3/include/node/v8.h:2709:40: note: candidate: v8::Maybe<int> v8::Value::Int32Value(v8::Local<v8::Context>) const V8_WARN_UNUSED_RESULT Maybe<int32_t> Int32Value(Local<Context> context) const; ^~~~~~~~~~ /root/.cache/node-gyp/12.16.3/include/node/v8.h:2709:40: note: candidate expects 1 argument, 0 provided ../src/binding.cc:117:67: error: no matching function for call to ‘v8::Value::BooleanValue()’ } else if (args[0]->IsBoolean() && !args[0]->BooleanValue()) { ^ In file included from /root/.cache/node-gyp/12.16.3/include/node/node.h:67:0, from ../src/binding.cc:1: /root/.cache/node-gyp/12.16.3/include/node/v8.h:2699:8: note: candidate: bool v8::Value::BooleanValue(v8::Isolate*) const bool BooleanValue(Isolate* isolate) const; ^~~~~~~~~~~~ /root/.cache/node-gyp/12.16.3/include/node/v8.h:2699:8: note: candidate expects 1 argument, 0 provided In file included from /root/.cache/node-gyp/12.16.3/include/node/v8-internal.h:14:0, from /root/.cache/node-gyp/12.16.3/include/node/v8.h:27, from /root/.cache/node-gyp/12.16.3/include/node/node.h:67, from ../src/binding.cc:1: /root/.cache/node-gyp/12.16.3/include/node/v8.h:2702:51: note: candidate: v8::Maybe<bool> v8::Value::BooleanValue(v8::Local<v8::Context>) const V8_WARN_UNUSED_RESULT Maybe<bool> BooleanValue( ^ /root/.cache/node-gyp/12.16.3/include/node/v8config.h:328:3: note: in definition of macro ‘V8_DEPRECATED’ declarator __attribute__((deprecated(message))) ^~~~~~~~~~ /root/.cache/node-gyp/12.16.3/include/node/v8.h:2702:51: note: candidate expects 1 argument, 0 provided V8_WARN_UNUSED_RESULT Maybe<bool> BooleanValue( ^ /root/.cache/node-gyp/12.16.3/include/node/v8config.h:328:3: note: in definition of macro ‘V8_DEPRECATED’ declarator __attribute__((deprecated(message))) ^~~~~~~~~~ ../src/binding.cc: In static member function ‘static void Magic::DetectFile(const Nan::FunctionCallbackInfo<v8::Value>&)’: ../src/binding.cc:146:47: error: no matching function for call to ‘v8::Value::ToString()’ String::Utf8Value str(args[0]->ToString()); ^ In file included from /root/.cache/node-gyp/12.16.3/include/node/node.h:67:0, from ../src/binding.cc:1: /root/.cache/node-gyp/12.16.3/include/node/v8.h:2668:44: note: candidate: v8::MaybeLocal<v8::String> v8::Value::ToString(v8::Local<v8::Context>) const V8_WARN_UNUSED_RESULT MaybeLocal<String> ToString( ^~~~~~~~ /root/.cache/node-gyp/12.16.3/include/node/v8.h:2668:44: note: candidate expects 1 argument, 0 provided In file included from /root/.cache/node-gyp/12.16.3/include/node/v8-internal.h:14:0, from /root/.cache/node-gyp/12.16.3/include/node/v8.h:27, from /root/.cache/node-gyp/12.16.3/include/node/node.h:67, from ../src/binding.cc:1: /root/.cache/node-gyp/12.16.3/include/node/v8.h:2684:31: note: candidate: v8::Local<v8::String> v8::Value::ToString(v8::Isolate*) const Local<String> ToString(Isolate* isolate) const); ^ /root/.cache/node-gyp/12.16.3/include/node/v8config.h:328:3: note: in definition of macro ‘V8_DEPRECATED’ declarator __attribute__((deprecated(message))) ^~~~~~~~~~ /root/.cache/node-gyp/12.16.3/include/node/v8.h:2684:31: note: candidate expects 1 argument, 0 provided Local<String> ToString(Isolate* isolate) const); ^ /root/.cache/node-gyp/12.16.3/include/node/v8config.h:328:3: note: in definition of macro ‘V8_DEPRECATED’ declarator __attribute__((deprecated(message))) ^~~~~~~~~~ ../src/binding.cc: In static member function ‘static void Magic::DetectAfter(uv_work_t*)’: ../src/binding.cc:314:38: warning: ‘v8::Local<v8::Value> Nan::Callback::Call(int, v8::Local<v8::Value>*) const’ is deprecated [-Wdeprecated-declarations] baton->callback->Call(1, argv); ^ In file included from ../src/binding.cc:3:0: ../../nan/nan.h:1674:3: note: declared here Call(int argc, v8::Local<v8::Value> argv[]) const { ^~~~ ../src/binding.cc:362:38: warning: ‘v8::Local<v8::Value> Nan::Callback::Call(int, v8::Local<v8::Value>*) const’ is deprecated [-Wdeprecated-declarations] baton->callback->Call(2, argv); ^ In file included from ../src/binding.cc:3:0: ../../nan/nan.h:1674:3: note: declared here Call(int argc, v8::Local<v8::Value> argv[]) const { ^~~~ ../src/binding.cc: In static member function ‘static void Magic::SetFallback(const Nan::FunctionCallbackInfo<v8::Value>&)’: ../src/binding.cc:377:32: error: no matching function for call to ‘v8::Value::ToString()’ && args[0]->ToString()->Length() > 0) { ^ In file included from /root/.cache/node-gyp/12.16.3/include/node/node.h:67:0, from ../src/binding.cc:1: /root/.cache/node-gyp/12.16.3/include/node/v8.h:2668:44: note: candidate: v8::MaybeLocal<v8::String> v8::Value::ToString(v8::Local<v8::Context>) const V8_WARN_UNUSED_RESULT MaybeLocal<String> ToString( ^~~~~~~~ /root/.cache/node-gyp/12.16.3/include/node/v8.h:2668:44: note: candidate expects 1 argument, 0 provided In file included from /root/.cache/node-gyp/12.16.3/include/node/v8-internal.h:14:0, from /root/.cache/node-gyp/12.16.3/include/node/v8.h:27, from /root/.cache/node-gyp/12.16.3/include/node/node.h:67, from ../src/binding.cc:1: /root/.cache/node-gyp/12.16.3/include/node/v8.h:2684:31: note: candidate: v8::Local<v8::String> v8::Value::ToString(v8::Isolate*) const Local<String> ToString(Isolate* isolate) const); ^ /root/.cache/node-gyp/12.16.3/include/node/v8config.h:328:3: note: in definition of macro ‘V8_DEPRECATED’ declarator __attribute__((deprecated(message))) ^~~~~~~~~~ /root/.cache/node-gyp/12.16.3/include/node/v8.h:2684:31: note: candidate expects 1 argument, 0 provided Local<String> ToString(Isolate* isolate) const); ^ /root/.cache/node-gyp/12.16.3/include/node/v8config.h:328:3: note: in definition of macro ‘V8_DEPRECATED’ declarator __attribute__((deprecated(message))) ^~~~~~~~~~ ../src/binding.cc:378:49: error: no matching function for call to ‘v8::Value::ToString()’ String::Utf8Value str(args[0]->ToString()); ^ In file included from /root/.cache/node-gyp/12.16.3/include/node/node.h:67:0, from ../src/binding.cc:1: /root/.cache/node-gyp/12.16.3/include/node/v8.h:2668:44: note: candidate: v8::MaybeLocal<v8::String> v8::Value::ToString(v8::Local<v8::Context>) const V8_WARN_UNUSED_RESULT MaybeLocal<String> ToString( ^~~~~~~~ /root/.cache/node-gyp/12.16.3/include/node/v8.h:2668:44: note: candidate expects 1 argument, 0 provided In file included from /root/.cache/node-gyp/12.16.3/include/node/v8-internal.h:14:0, from /root/.cache/node-gyp/12.16.3/include/node/v8.h:27, from /root/.cache/node-gyp/12.16.3/include/node/node.h:67, from ../src/binding.cc:1: /root/.cache/node-gyp/12.16.3/include/node/v8.h:2684:31: note: candidate: v8::Local<v8::String> v8::Value::ToString(v8::Isolate*) const Local<String> ToString(Isolate* isolate) const); ^ /root/.cache/node-gyp/12.16.3/include/node/v8config.h:328:3: note: in definition of macro ‘V8_DEPRECATED’ declarator __attribute__((deprecated(message))) ^~~~~~~~~~ /root/.cache/node-gyp/12.16.3/include/node/v8.h:2684:31: note: candidate expects 1 argument, 0 provided Local<String> ToString(Isolate* isolate) const); ^ /root/.cache/node-gyp/12.16.3/include/node/v8config.h:328:3: note: in definition of macro ‘V8_DEPRECATED’ declarator __attribute__((deprecated(message))) ^~~~~~~~~~ ../src/binding.cc: In static member function ‘static void Magic::Initialize(int)’: ../src/binding.cc:396:42: error: no matching function for call to ‘v8::FunctionTemplate::GetFunction()’ constructor.Reset(tpl->GetFunction()); ^ In file included from /root/.cache/node-gyp/12.16.3/include/node/node.h:67:0, from ../src/binding.cc:1: /root/.cache/node-gyp/12.16.3/include/node/v8.h:6126:46: note: candidate: v8::MaybeLocal<v8::Function> v8::FunctionTemplate::GetFunction(v8::Local<v8::Context>) V8_WARN_UNUSED_RESULT MaybeLocal<Function> GetFunction( ^~~~~~~~~~~ /root/.cache/node-gyp/12.16.3/include/node/v8.h:6126:46: note: candidate expects 1 argument, 0 provided ../src/binding.cc:397:7: error: ‘target’ was not declared in this scope target->Set(Nan::New<String>("setFallback").ToLocalChecked(), ^~~~~~ ../src/binding.cc:398:72: error: no matching function for call to ‘v8::FunctionTemplate::GetFunction()’ Nan::New<FunctionTemplate>(SetFallback)->GetFunction()); ^ In file included from /root/.cache/node-gyp/12.16.3/include/node/node.h:67:0, from ../src/binding.cc:1: /root/.cache/node-gyp/12.16.3/include/node/v8.h:6126:46: note: candidate: v8::MaybeLocal<v8::Function> v8::FunctionTemplate::GetFunction(v8::Local<v8::Context>) V8_WARN_UNUSED_RESULT MaybeLocal<Function> GetFunction( ^~~~~~~~~~~ /root/.cache/node-gyp/12.16.3/include/node/v8.h:6126:46: note: candidate expects 1 argument, 0 provided ../src/binding.cc:400:80: error: no matching function for call to ‘v8::FunctionTemplate::GetFunction()’ target->Set(Nan::New<String>("Magic").ToLocalChecked(), tpl->GetFunction()); ^ In file included from /root/.cache/node-gyp/12.16.3/include/node/node.h:67:0, from ../src/binding.cc:1: /root/.cache/node-gyp/12.16.3/include/node/v8.h:6126:46: note: candidate: v8::MaybeLocal<v8::Function> v8::FunctionTemplate::GetFunction(v8::Local<v8::Context>) V8_WARN_UNUSED_RESULT MaybeLocal<Function> GetFunction( ^~~~~~~~~~~ /root/.cache/node-gyp/12.16.3/include/node/v8.h:6126:46: note: candidate expects 1 argument, 0 provided ../src/binding.cc: At global scope: ../src/binding.cc:405:13: error: variable or field ‘init’ declared void void init(Handle<Object> target) { ^~~~~~ ../src/binding.cc:405:13: error: ‘Handle’ was not declared in this scope ../src/binding.cc:405:26: error: expected primary-expression before ‘>’ token void init(Handle<Object> target) { ^ ../src/binding.cc:405:28: error: ‘target’ was not declared in this scope void init(Handle<Object> target) { ^~~~~~ In file included from ../src/binding.cc:1:0: ../src/binding.cc:410:22: error: ‘init’ was not declared in this scope NODE_MODULE(magic, init); ^ /root/.cache/node-gyp/12.16.3/include/node/node.h:608:36: note: in definition of macro ‘NODE_MODULE_X’ (node::addon_register_func) (regfunc), \ ^~~~~~~ ../src/binding.cc:410:3: note: in expansion of macro ‘NODE_MODULE’ NODE_MODULE(magic, init); ^~~~~~~~~~~ magic.target.mk:122: die Regel für Ziel „Release/obj.target/magic/src/binding.o“ scheiterte make: *** [Release/obj.target/magic/src/binding.o] Fehler 1 make: Verzeichnis „/opt/iobroker/node_modules/iobroker.sql/node_modules/mmmagic/build“ wird verlassen gyp ERR! build error gyp ERR! stack Error: `make` failed with exit code: 2 gyp ERR! stack at ChildProcess.onExit (/usr/lib/node_modules/npm/node_modules/node-gyp/lib/build.js:194:23) gyp ERR! stack at ChildProcess.emit (events.js:310:20) gyp ERR! stack at Process.ChildProcess._handle.onexit (internal/child_process.js:275:12) gyp ERR! System Linux 4.9.0-8-amd64 gyp ERR! command "/usr/bin/node" "/usr/lib/node_modules/npm/node_modules/node-gyp/bin/node-gyp.js" "rebuild" gyp ERR! cwd /opt/iobroker/node_modules/iobroker.sql/node_modules/mmmagic gyp ERR! node -v v12.16.3 gyp ERR! node-gyp -v v5.1.0 gyp ERR! not ok npm ERR! code ELIFECYCLE npm ERR! errno 1 npm ERR! mmmagic@0.5.2 install: `node-gyp rebuild` npm ERR! Exit status 1 npm ERR! npm ERR! Failed at the mmmagic@0.5.2 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! /root/.npm/_logs/2020-05-10T09_53_56_468Z-debug.log
Da steh ich nun und weiß nicht weiter ...
-
@integer63 Vollzieht er das Update denn?
-
Ja, node und npm sind auf dem aktuellen stand:
node -v
v12.16.3
nodejs -v
v12.16.3
npm -v
6.14.4 -
@integer63 Na dann... anschmeissen und gucken ob´s läuft....
Js-c noch hoch und los -
Aber ich denke man muss ein npm Rebuild machen ... und dabei bricht er ja schon recht weit am Anfang mit ab.
-
@integer63 Testen... Du hast ja nen Backup (hoffe ich)
-
@guergen "iobroker start" macht gar nichts - keinerlei Meldung, einfach wieder der Prompt
Backup habe ich (VM Snapshot), aber ich würde es gerne noch irgendwie weiter versuchen ... den "fixer" habe ich vorher auch drüber laufen lassen.
-
@integer63 vorher auch mal gleich nen apt-get update/upgrade gemacht?
-
@integer63 such mal hier im Forum nach dem Fehler
-
mal ne ganz dumme Frage, der Installation Fixer legt ja einen User iobroker an - welches Passwort hat der denn?
Ich sollte mich doch damit anmelden und dann mit sudo alles machen, oder? -
@integer63 legst du den user iobroker nicht im system an?
-
So, nachdem es immer schlimmer wurde (ist halt so, wenn man keine Ahnung hat), habe ich den Urzustand (Snapshot vom Master) wieder eingespielt - uff, wenigstens das hat funktioniert.
Jetzt werde ich wohl erst mal "aufräumen". Habe auch schon einen Adapter gefunden (SQL), den man hätte besser vorher auf eine Version heben müssen, die auch node 12 unterstützt. Gibt es eine Liste, welche Adapter Versionen man für node 12 benötigt?