[Solved] NPEs in zwave binding with latest sanpshot build 2.1.0.201704151452

Phew :slight_smile:

I would strongly suggest to upgrade to the next version as it will hopefully solve the issue properly.

How do I do the update? Just uninstall and reinstall the binding in PaperUI?

I did controller remove, removed all things in karaf console, restarted OH2, deleted all XML files.
Recreated controller and things…

I have around 8 zwave devices, 50% of them still unknown… and I still see strange exceptions in the log… (“IllegalStateException timer already cancelled” this time)

hopefully it is just that network recreation takes some time?

Same Exceptions here… some devices unknown. I hope tomorrow morning the network will look better…

I just did apt-get update/upgrade…
nothing new atm.

How long does this build takes you recommend to upgrade to?

MArkus

Normally this should work.

I don’t know - the build of the binding is done already, but I don’t know when other packages downstream are rebuilt. I don’t know if packaged use the binding directly (in which case it should be available), or if it’s through something else.

I just checked my xml files… they are very big and do not contain what I expected (a device description) but stuff like this:

org.openhab.binding.zwave.internal.protocol.ZWaveDeviceClass karaf.startlevel.bundle 80 karaf.framework.felix mvn:org.apache.felix/org.apache.felix.framework/5.6.1 eecap-1.8 osgi.ee; osgi.ee="OSGi/Minimum"; version:List<Version>="1.0,1.1,1.2", osgi.ee; osgi.ee="JavaSE"; version:List<Version>="1.0,1.1,1.2,1.3,1.4,1.5,1.6,1.7,1.8" karaf.version 4.0.8 felix.fileinstall.dir /var/lib/openhab2/etc felix.fileinstall.log.default jul ...

Is this known?

This is what I mentioned earlier, and why I suggested to update to the newer version :wink:

I should add - the ‘real’ information is in there as well - it’s just a load of rubbish at the top that is the problem.

Ok.
I did a zwave binding uninstall / install and checked the bundle in karaf console.

But it is still 2.1.0.201704151452 which it was already this morning…

so obviously the new build is not yet available

Some test failed in the feed binding - I don’t know if this stops the whole build from being used downstream or not - hopefully not.

https://openhab.ci.cloudbees.com/job/openHAB2-Bundles/33/

I still get exceptions… now like these (looks like an endless loop somehow?)

2017-04-17 01:18:04.982 [DEBUG] [alization.ZWaveNodeInitStageAdvancer] - NODE 12: Stage DYNAMIC_END. Initialisation retry timer triggered. Increased to 10000
2017-04-17 01:18:04.983 [DEBUG] [alization.ZWaveNodeInitStageAdvancer] - NODE 12: Node advancer - DYNAMIC_END: queue length(0), free to send(true)
2017-04-17 01:18:04.983 [DEBUG] [alization.ZWaveNodeInitStageAdvancer] - NODE 12: Initialisation retry timer started 10000
2017-04-17 01:18:04.984 [DEBUG] [alization.ZWaveNodeInitStageAdvancer] - NODE 12: Node advancer: loop - DYNAMIC_END try 1: stageAdvanced(false)
2017-04-17 01:18:06.551 [ERROR] [ve.internal.protocol.ZWaveController] - Exception during ZWave thread: Input 2. {}
com.thoughtworks.xstream.converters.ConversionException: Could not call com.google.common.collect.Synchronized$SynchronizedSetMultimap.writeObject() : Could not call com.google.common.collect.HashMultimap.writeObject() : Could not call java.util.concurrent.ConcurrentLinkedQueue.writeObject() : null
---- Debugging information ----
message : Could not call java.util.concurrent.ConcurrentLinkedQueue.writeObject()
cause-exception : java.lang.StackOverflowError
cause-message : null

message : Could not call com.google.common.collect.HashMultimap.writeObject()
cause-exception : com.thoughtworks.xstream.converters.ConversionException
cause-message : Could not call java.util.concurrent.ConcurrentLinkedQueue.writeObject() : null

message : Could not call com.google.common.collect.Synchronized$SynchronizedSetMultimap.writeObject()
cause-exception : com.thoughtworks.xstream.converters.ConversionException
cause-message : Could not call com.google.common.collect.HashMultimap.writeObject() : Could not call java.util.concurrent.ConcurrentLinkedQueue.writeObject() : null
---- Debugging information ----
message : Could not call java.util.concurrent.ConcurrentLinkedQueue.writeObject()
cause-exception : java.lang.StackOverflowError
cause-message : null


at com.thoughtworks.xstream.converters.reflection.SerializationMethodInvoker.callWriteObject(SerializationMethodInvoker.java:140)[98:org.eclipse.smarthome.config.xml:0.9.0.201704011656]
at com.thoughtworks.xstream.converters.reflection.SerializableConverter.doMarshal(SerializableConverter.java:259)[98:org.eclipse.smarthome.config.xml:0.9.0.201704011656]
at com.thoughtworks.xstream.converters.reflection.AbstractReflectionConverter.marshal(AbstractReflectionConverter.java:83)[98:org.eclipse.smarthome.config.xml:0.9.0.201704011656]
at com.thoughtworks.xstream.core.AbstractReferenceMarshaller.convert(AbstractReferenceMarshaller.java:69)[98:org.eclipse.smarthome.config.xml:0.9.0.201704011656]
at com.thoughtworks.xstream.core.TreeMarshaller.convertAnother(TreeMarshaller.java:58)[98:org.eclipse.smarthome.config.xml:0.9.0.201704011656]
at com.thoughtworks.xstream.core.AbstractReferenceMarshaller$1.convertAnother(AbstractReferenceMarshaller.java:84)[98:org.eclipse.smarthome.config.xml:0.9.0.201704011656]
at com.thoughtworks.xstream.converters.reflection.AbstractReflectionConverter.marshallField(AbstractReflectionConverter.java:250)[98:org.eclipse.smarthome.config.xml:0.9.0.201704011656]
at com.thoughtworks.xstream.converters.reflection.AbstractReflectionConverter$2.writeField(AbstractReflectionConverter.java:226)[98:org.eclipse.smarthome.config.xml:0.9.0.201704011656]
at com.thoughtworks.xstream.converters.reflection.AbstractReflectionConverter$2.<init>(AbstractReflectionConverter.java:189)[98:org.eclipse.smarthome.config.xml:0.9.0.201704011656]
at com.thoughtworks.xstream.converters.reflection.AbstractReflectionConverter.doMarshal(AbstractReflectionConverter.java:135)[98:org.eclipse.smarthome.config.xml:0.9.0.201704011656]
at com.thoughtworks.xstream.converters.reflection.AbstractReflectionConverter.marshal(AbstractReflectionConverter.java:83)[98:org.eclipse.smarthome.config.xml:0.9.0.201704011656]
at com.thoughtworks.xstream.core.AbstractReferenceMarshaller.convert(AbstractReferenceMarshaller.java:69)[98:org.eclipse.smarthome.config.xml:0.9.0.201704011656]
at com.thoughtworks.xstream.core.TreeMarshaller.convertAnother(TreeMarshaller.java:58)[98:org.eclipse.smarthome.config.xml:0.9.0.201704011656]
at com.thoughtworks.xstream.core.AbstractReferenceMarshaller$1.convertAnother(AbstractReferenceMarshaller.java:84)[98:org.eclipse.smarthome.config.xml:0.9.0.201704011656]
at com.thoughtworks.xstream.converters.reflection.AbstractReflectionConverter.marshallField(AbstractReflectionConverter.java:250)[98:org.eclipse.smarthome.config.xml:0.9.0.201704011656]
at com.thoughtworks.xstream.converters.reflection.AbstractReflectionConverter$2.writeField(AbstractReflectionConverter.java:226)[98:org.eclipse.smarthome.config.xml:0.9.0.201704011656]
at com.thoughtworks.xstream.converters.reflection.AbstractReflectionConverter$2.<init>(AbstractReflectionConverter.java:189)[98:org.eclipse.smarthome.config.xml:0.9.0.201704011656]
at com.thoughtworks.xstream.converters.reflection.AbstractReflectionConverter.doMarshal(AbstractReflectionConverter.java:135)[98:org.eclipse.smarthome.config.xml:0.9.0.201704011656]
at com.thoughtworks.xstream.converters.reflection.AbstractReflectionConverter.marshal(AbstractReflectionConverter.java:83)[98:org.eclipse.smarthome.config.xml:0.9.0.201704011656]
at com.thoughtworks.xstream.core.AbstractReferenceMarshaller.convert(AbstractReferenceMarshaller.java:69)[98:org.eclipse.smarthome.config.xml:0.9.0.201704011656]
at com.thoughtworks.xstream.core.TreeMarshaller.convertAnother(TreeMarshaller.java:58)[98:org.eclipse.smarthome.config.xml:0.9.0.201704011656]


many hundred lines looking the same

After uninstall / install of the binding I don*t get any device any more and this exception:

2017-04-17 01:21:37.867 [ERROR] [ig.xml.osgi.XmlDocumentBundleTracker] - Could not send adding finished event for the module 'org.openhab.binding.zwave'!
java.lang.IllegalArgumentException: UID must have at least 2 segments.
	at org.eclipse.smarthome.core.thing.UID.<init>(UID.java:65)[106:org.eclipse.smarthome.core.thing:0.9.0.201704011656]
	at org.eclipse.smarthome.core.thing.UID.<init>(UID.java:43)[106:org.eclipse.smarthome.core.thing:0.9.0.201704011656]
	at org.eclipse.smarthome.core.thing.type.ChannelTypeUID.<init>(ChannelTypeUID.java:35)[106:org.eclipse.smarthome.core.thing:0.9.0.201704011656]
	at org.eclipse.smarthome.core.thing.xml.internal.ChannelXmlResult.toChannelDefinition(ChannelXmlResult.java:116)[107:org.eclipse.smarthome.core.thing.xml:0.9.0.201704011656]
	at org.eclipse.smarthome.core.thing.xml.internal.ThingTypeXmlResult.toChannelDefinitions(ThingTypeXmlResult.java:81)[107:org.eclipse.smarthome.core.thing.xml:0.9.0.201704011656]
	at org.eclipse.smarthome.core.thing.xml.internal.ThingTypeXmlResult.toThingType(ThingTypeXmlResult.java:129)[107:org.eclipse.smarthome.core.thing.xml:0.9.0.201704011656]
	at org.eclipse.smarthome.core.thing.xml.internal.ThingTypeXmlProvider.addingFinished(ThingTypeXmlProvider.java:145)[107:org.eclipse.smarthome.core.thing.xml:0.9.0.201704011656]
	at org.eclipse.smarthome.config.xml.osgi.XmlDocumentBundleTracker.addingFinished(XmlDocumentBundleTracker.java:220)[98:org.eclipse.smarthome.config.xml:0.9.0.201704011656]
	at org.eclipse.smarthome.config.xml.osgi.XmlDocumentBundleTracker.access$6(XmlDocumentBundleTracker.java:215)[98:org.eclipse.smarthome.config.xml:0.9.0.201704011656]
	at org.eclipse.smarthome.config.xml.osgi.XmlDocumentBundleTracker$1.processBundle(XmlDocumentBundleTracker.java:141)[98:org.eclipse.smarthome.config.xml:0.9.0.201704011656]
	at org.eclipse.smarthome.config.xml.osgi.AbstractAsyncBundleProcessor$1.run(AbstractAsyncBundleProcessor.java:231)[98:org.eclipse.smarthome.config.xml:0.9.0.201704011656]
	at java.lang.Thread.run(Thread.java:745)[:1.8.0_121]

This exception I have also seen during startup…

I replied into the wrong thread but I reverted the logging change.

Hi @chris,

I confirm everything is now working again with your latest changes.

Regards

Ok, thanks. It’s a bit strange as the only change was to change the loggers, but if it resolved it, then fine. The new binding can resolve this issue…

Hello @chris

thank you a lot for your responsiveness and help even during the holidays. Unfortunately I somehow managed to mess up all (so my RFXtrx433E devices were also gone) and I ended up to do a fresh install of OpenHAB on my Pi.

Nevertheless, a lesson learned is not do do every update, but rather pack it in a script that does a backup of /etc/openhab2 /usr/share/openhab2 and /var/lib/openhab2 before apt upgrade so in case this happens a revert should be easily doable. :slight_smile:

Hi
I can also confirm that most of my devices are working again.

But I have 3 devices that are unkinown, but they also didnt work before so I will open a new thread for those issues.

Thanks a lot @chris for your support over the holidays…

Just as follow up @chris,

everything is working fine after a fresh installation. All devices have come online (took about a day to have all devices recognized by OpenHAB again) and I can use OpenHAB as before.

Thanks again for your support!