question-mark
Stuck on an issue?

Lightrun Answers was designed to reduce the constant googling that comes with debugging 3rd party libraries. It collects links to all the places you might be looking at while hunting down a tough bug.

And, if you’re still stuck at the end, we’re happy to hop on a call to see how we can help out.

UID must have at least 2 segments.

See original GitHub issue
  • OH2 Version: 2.5 SNAPSHOT #1723 and later
  • Binding Version (if SNAPSHOT, provide compile time as found on the filename in the console):

If the problem is associated with a device, please provide the following -: 2.5.0.201910150544 (I’ve updated OH once since the error started showing up.

A full discussion can be found at https://community.openhab.org/t/zwave-openhab-2-5-0-build-1723-exception-during-startup/83565.

Since build 1723, maybe one or two builds before that as I don’t update every day, I’ve been seeing the following exception in the logs during startup followed by a set of warnings:

2019-10-14 07:58:16.519 [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.common.AbstractUID.<init>(AbstractUID.java:70) ~[133:org.openhab.core:2.5.0.201910140525]
        at org.eclipse.smarthome.core.common.AbstractUID.<init>(AbstractUID.java:49) ~[133:org.openhab.core:2.5.0.201910140525]
        at org.eclipse.smarthome.core.thing.UID.<init>(UID.java:48) ~[?:?]
        at org.eclipse.smarthome.core.thing.type.ChannelTypeUID.<init>(ChannelTypeUID.java:40) ~[?:?]
        at org.eclipse.smarthome.core.thing.xml.internal.ChannelXmlResult.toChannelDefinition(ChannelXmlResult.java:135) ~[?:?]
        at org.eclipse.smarthome.core.thing.xml.internal.ThingTypeXmlResult.toChannelDefinitions(ThingTypeXmlResult.java:94) ~[?:?]
        at org.eclipse.smarthome.core.thing.xml.internal.ThingTypeXmlResult.getBuilder(ThingTypeXmlResult.java:145) ~[?:?]
        at org.eclipse.smarthome.core.thing.xml.internal.ThingTypeXmlResult.toThingType(ThingTypeXmlResult.java:153) ~[?:?]
        at org.eclipse.smarthome.core.thing.xml.internal.ThingTypeXmlProvider.addingFinished(ThingTypeXmlProvider.java:147) ~[?:?]
        at org.eclipse.smarthome.config.xml.osgi.XmlDocumentBundleTracker.addingFinished(XmlDocumentBundleTracker.java:265) [142:org.openhab.core.config.xml:2.5.0.201910140543]
        at org.eclipse.smarthome.config.xml.osgi.XmlDocumentBundleTracker.parseDocuments(XmlDocumentBundleTracker.java:424) [142:org.openhab.core.config.xml:2.5.0.201910140543]
        at org.eclipse.smarthome.config.xml.osgi.XmlDocumentBundleTracker.processBundle(XmlDocumentBundleTracker.java:398) [142:org.openhab.core.config.xml:2.5.0.201910140543]
        at org.eclipse.smarthome.config.xml.osgi.XmlDocumentBundleTracker.access$6(XmlDocumentBundleTracker.java:393) [142:org.openhab.core.config.xml:2.5.0.201910140543]
        at org.eclipse.smarthome.config.xml.osgi.XmlDocumentBundleTracker$2.run(XmlDocumentBundleTracker.java:363) [142:org.openhab.core.config.xml:2.5.0.201910140543]
        at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511) [?:?]
        at java.util.concurrent.FutureTask.run(FutureTask.java:266) [?:?]
        at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.access$201(ScheduledThreadPoolExecutor.java:180) [?:?]
        at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:293) [?:?]
        at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149) [?:?]
        at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) [?:?]
        at java.lang.Thread.run(Thread.java:748) [?:?]
...
2019-10-14 07:58:21.502 [WARN ] [wave.discovery.ZWaveDiscoveryService] - NODE 5: Device discovery could not resolve to a thingType! 0138:0001:0002::0.5
2019-10-14 07:58:21.507 [WARN ] [wave.discovery.ZWaveDiscoveryService] - NODE 10: Device discovery could not resolve to a thingType! 0138:0001:0002::0.5
2019-10-14 07:58:21.517 [WARN ] [wave.discovery.ZWaveDiscoveryService] - NODE 13: Device discovery could not resolve to a thingType! 0090:0001:0001::3.37
2019-10-14 07:58:21.524 [WARN ] [wave.discovery.ZWaveDiscoveryService] - NODE 12: Device discovery could not resolve to a thingType! 0090:0001:0001::3.37
2019-10-14 07:58:21.607 [WARN ] [wave.discovery.ZWaveDiscoveryService] - NODE 9: Device discovery could not resolve to a thingType! 0138:0001:0002::0.5

The nodes that have the warnings are all battery powered devices (Zcombo smoke/CO alarms and Kwickset 910 deadbolts) but others have reported mains powered devices in their warnings. Mark Hilbrush reports the exception with just the serial controller and no other devices.

The following is a full debug level log of the startup sequence from the zwave binding. (NOTE: the original exception above comes from the XmlDocumentBundleTracker so is not included in the binding logs.) I notice that during this restart of OH, the list of nodes with the warning is different which might be another clue.

zwave.log

Issue Analytics

  • State:closed
  • Created 4 years ago
  • Comments:22 (4 by maintainers)

github_iconTop GitHub Comments

2reactions
wborncommented, Oct 16, 2019

It’s this channel that is missing an id and typeId.

0reactions
cdjacksoncommented, Jan 4, 2020

Closing this as I recall we found the offender.

Read more comments on GitHub >

github_iconTop Results From Across the Web

Kostal Inverter Binding - interoperable Issue Thinks not ...
java.lang.IllegalArgumentException : UID must have at least 2 segments. at org.eclipse.smarthome.core.common.AbstractUID.(AbstractUID.java:70) ~[ ...
Read more >
Enabling automatic assignment of unique UNIX identities - IBM
To use this method, the RACF database must be at least at AIM stage 2. For implementation details, see Automatically assigning unique IDs...
Read more >
Users & Segments - OneSignal Documentation
Managing your users in the OneSignal Dashboard.
Read more >
Best Practices for Identifying Users | Segment Documentation
A User ID should be a robust, static, unique identifier that you ... the .identify(UID) and .track(“Signed Up”) events fire, in that order....
Read more >
Adding and Deleting MultiView Cells Dynamically
2 . If you are using tabview (integral component that consists of a built-in multiview and ... //multiview should have at least one...
Read more >

github_iconTop Related Medium Post

No results found

github_iconTop Related StackOverflow Question

No results found

github_iconTroubleshoot Live Code

Lightrun enables developers to add logs, metrics and snapshots to live code - no restarts or redeploys required.
Start Free

github_iconTop Related Reddit Thread

No results found

github_iconTop Related Hackernoon Post

No results found

github_iconTop Related Tweet

No results found

github_iconTop Related Dev.to Post

No results found

github_iconTop Related Hashnode Post

No results found