eclipse-archived / smarthome

Eclipse SmartHome™ project
https://www.eclipse.org/smarthome/
Eclipse Public License 2.0
862 stars 783 forks source link

OH2 error when reloading things file #2733

Closed metbril closed 7 years ago

metbril commented 7 years ago

Running latest snapshot on RPi, with apt-get install

On startup of service, things file loads perfectly. When I edit the file and save it, I get an error (see below)

demo.things

Bridge rfxcom:bridge:1 [ serialPort="/dev/ttyUSB1" ] {
    Thing lighting2 remote1_1 [deviceId="12260194.1", subType="AC"]
    Thing lighting2 remote1_2 [deviceId="12260194.2", subType="AC"]
    Thing lighting2 remote1_3 [deviceId="12260194.3", subType="AC"]
    Thing lighting2 remote1_0 [deviceId="12260194.0", subType="AC"]
}

openhab.log

2017-01-03 11:00:18.413 [INFO ] [el.core.internal.ModelRepositoryImpl] - Refreshing model 'demo.things'
2017-01-03 11:00:23.551 [ERROR] [ome.core.thing.internal.ThingManager] - Exception occured while calling thing updated at ThingHandler 'org.openhab.binding.rfxcom.handler.RFXComBridgeHandler@afa67c': null
java.util.concurrent.TimeoutException
    at java.util.concurrent.FutureTask.get(FutureTask.java:205)[:1.8.0_111]
    at org.eclipse.smarthome.core.common.SafeMethodCaller.callAsynchronous(SafeMethodCaller.java:188)[96:org.eclipse.smarthome.core:0.9.0.201612221226]
    at org.eclipse.smarthome.core.common.SafeMethodCaller.call(SafeMethodCaller.java:81)[96:org.eclipse.smarthome.core:0.9.0.201612221226]
    at org.eclipse.smarthome.core.common.SafeMethodCaller.call(SafeMethodCaller.java:65)[96:org.eclipse.smarthome.core:0.9.0.201612221226]
    at org.eclipse.smarthome.core.thing.internal.ThingManager.thingUpdated(ThingManager.java:518)[103:org.eclipse.smarthome.core.thing:0.9.0.201612221226]
    at org.eclipse.smarthome.core.thing.internal.ThingRegistryImpl.notifyTrackers(ThingRegistryImpl.java:227)[103:org.eclipse.smarthome.core.thing:0.9.0.201612221226]
    at org.eclipse.smarthome.core.thing.internal.ThingRegistryImpl.notifyListenersAboutUpdatedElement(ThingRegistryImpl.java:150)[103:org.eclipse.smarthome.core.thing:0.9.0.201612221226]
    at org.eclipse.smarthome.core.thing.internal.ThingRegistryImpl.notifyListenersAboutUpdatedElement(ThingRegistryImpl.java:1)[103:org.eclipse.smarthome.core.thing:0.9.0.201612221226]
    at org.eclipse.smarthome.core.common.registry.AbstractRegistry.updated(AbstractRegistry.java:167)[96:org.eclipse.smarthome.core:0.9.0.201612221226]
    at org.eclipse.smarthome.core.common.registry.AbstractProvider.notifyListeners(AbstractProvider.java:57)[96:org.eclipse.smarthome.core:0.9.0.201612221226]
    at org.eclipse.smarthome.core.common.registry.AbstractProvider.notifyListenersAboutUpdatedElement(AbstractProvider.java:82)[96:org.eclipse.smarthome.core:0.9.0.201612221226]
    at org.eclipse.smarthome.model.thing.internal.GenericThingProvider.access$4(GenericThingProvider.java:1)[131:org.eclipse.smarthome.model.thing:0.9.0.201612221226]
    at org.eclipse.smarthome.model.thing.internal.GenericThingProvider$18.apply(GenericThingProvider.java:923)[131:org.eclipse.smarthome.model.thing:0.9.0.201612221226]
    at org.eclipse.smarthome.model.thing.internal.GenericThingProvider$18.apply(GenericThingProvider.java:1)[131:org.eclipse.smarthome.model.thing:0.9.0.201612221226]
    at org.eclipse.xtext.xbase.lib.IteratorExtensions.forEach(IteratorExtensions.java:363)[144:org.eclipse.xtext.xbase.lib:2.9.2]
    at org.eclipse.xtext.xbase.lib.IterableExtensions.forEach(IterableExtensions.java:333)[144:org.eclipse.xtext.xbase.lib:2.9.2]
    at org.eclipse.smarthome.model.thing.internal.GenericThingProvider.createThingsFromModelForThingHandlerFactory(GenericThingProvider.java:933)[131:org.eclipse.smarthome.model.thing:0.9.0.201612221226]
    at org.eclipse.smarthome.model.thing.internal.GenericThingProvider.access$1(GenericThingProvider.java:887)[131:org.eclipse.smarthome.model.thing:0.9.0.201612221226]
    at org.eclipse.smarthome.model.thing.internal.GenericThingProvider$1$1.apply(GenericThingProvider.java:228)[131:org.eclipse.smarthome.model.thing:0.9.0.201612221226]
    at org.eclipse.smarthome.model.thing.internal.GenericThingProvider$1$1.apply(GenericThingProvider.java:1)[131:org.eclipse.smarthome.model.thing:0.9.0.201612221226]
    at org.eclipse.xtext.xbase.lib.IteratorExtensions.forEach(IteratorExtensions.java:363)[144:org.eclipse.xtext.xbase.lib:2.9.2]
    at org.eclipse.xtext.xbase.lib.IterableExtensions.forEach(IterableExtensions.java:333)[144:org.eclipse.xtext.xbase.lib:2.9.2]
    at org.eclipse.smarthome.model.thing.internal.GenericThingProvider$1.apply(GenericThingProvider.java:231)[131:org.eclipse.smarthome.model.thing:0.9.0.201612221226]
    at org.eclipse.smarthome.model.thing.internal.GenericThingProvider$1.apply(GenericThingProvider.java:1)[131:org.eclipse.smarthome.model.thing:0.9.0.201612221226]
    at org.eclipse.smarthome.config.core.BundleProcessorVetoManager.applyActionFor(BundleProcessorVetoManager.java:121)[92:org.eclipse.smarthome.config.core:0.9.0.201612221226]
    at org.eclipse.smarthome.model.thing.internal.GenericThingProvider$6.apply(GenericThingProvider.java:302)[131:org.eclipse.smarthome.model.thing:0.9.0.201612221226]
    at org.eclipse.smarthome.model.thing.internal.GenericThingProvider$6.apply(GenericThingProvider.java:1)[131:org.eclipse.smarthome.model.thing:0.9.0.201612221226]
    at org.eclipse.xtext.xbase.lib.IteratorExtensions.forEach(IteratorExtensions.java:363)[144:org.eclipse.xtext.xbase.lib:2.9.2]
    at org.eclipse.xtext.xbase.lib.IterableExtensions.forEach(IterableExtensions.java:333)[144:org.eclipse.xtext.xbase.lib:2.9.2]
    at org.eclipse.smarthome.model.thing.internal.GenericThingProvider.createThingsFromModel(GenericThingProvider.java:305)[131:org.eclipse.smarthome.model.thing:0.9.0.201612221226]
    at org.eclipse.smarthome.model.thing.internal.GenericThingProvider.modelChanged(GenericThingProvider.java:825)[131:org.eclipse.smarthome.model.thing:0.9.0.201612221226]
    at org.eclipse.smarthome.model.core.internal.ModelRepositoryImpl.notifyListeners(ModelRepositoryImpl.java:207)[120:org.eclipse.smarthome.model.core:0.9.0.201612221226]
    at org.eclipse.smarthome.model.core.internal.ModelRepositoryImpl.addOrRefreshModel(ModelRepositoryImpl.java:120)[120:org.eclipse.smarthome.model.core:0.9.0.201612221226]
    at org.eclipse.smarthome.model.core.internal.folder.FolderObserver.checkFile(FolderObserver.java:270)[120:org.eclipse.smarthome.model.core:0.9.0.201612221226]
    at org.eclipse.smarthome.model.core.internal.folder.FolderObserver.access$1(FolderObserver.java:264)[120:org.eclipse.smarthome.model.core:0.9.0.201612221226]
    at org.eclipse.smarthome.model.core.internal.folder.FolderObserver$WatchQueueReader.processWatchEvent(FolderObserver.java:145)[120:org.eclipse.smarthome.model.core:0.9.0.201612221226]
    at org.eclipse.smarthome.core.service.AbstractWatchQueueReader.run(AbstractWatchQueueReader.java:122)[96:org.eclipse.smarthome.core:0.9.0.201612221226]
    at java.lang.Thread.run(Thread.java:745)[:1.8.0_111]
2017-01-03 11:00:23.585 [ERROR] [ore.thing.internal.ThingRegistryImpl] - Could not inform the ThingTracker 'org.eclipse.smarthome.core.thing.internal.ThingManager@19c0d3f' about the 'THING_UPDATED' event!
java.lang.NullPointerException
    at org.eclipse.smarthome.core.thing.internal.ThingManager.thingUpdated(ThingManager.java:542)[103:org.eclipse.smarthome.core.thing:0.9.0.201612221226]
    at org.eclipse.smarthome.core.thing.internal.ThingRegistryImpl.notifyTrackers(ThingRegistryImpl.java:227)[103:org.eclipse.smarthome.core.thing:0.9.0.201612221226]
    at org.eclipse.smarthome.core.thing.internal.ThingRegistryImpl.notifyListenersAboutUpdatedElement(ThingRegistryImpl.java:150)[103:org.eclipse.smarthome.core.thing:0.9.0.201612221226]
    at org.eclipse.smarthome.core.thing.internal.ThingRegistryImpl.notifyListenersAboutUpdatedElement(ThingRegistryImpl.java:1)[103:org.eclipse.smarthome.core.thing:0.9.0.201612221226]
    at org.eclipse.smarthome.core.common.registry.AbstractRegistry.updated(AbstractRegistry.java:167)[96:org.eclipse.smarthome.core:0.9.0.201612221226]
    at org.eclipse.smarthome.core.common.registry.AbstractProvider.notifyListeners(AbstractProvider.java:57)[96:org.eclipse.smarthome.core:0.9.0.201612221226]
    at org.eclipse.smarthome.core.common.registry.AbstractProvider.notifyListenersAboutUpdatedElement(AbstractProvider.java:82)[96:org.eclipse.smarthome.core:0.9.0.201612221226]
    at org.eclipse.smarthome.model.thing.internal.GenericThingProvider.access$4(GenericThingProvider.java:1)[131:org.eclipse.smarthome.model.thing:0.9.0.201612221226]
    at org.eclipse.smarthome.model.thing.internal.GenericThingProvider$18.apply(GenericThingProvider.java:923)[131:org.eclipse.smarthome.model.thing:0.9.0.201612221226]
    at org.eclipse.smarthome.model.thing.internal.GenericThingProvider$18.apply(GenericThingProvider.java:1)[131:org.eclipse.smarthome.model.thing:0.9.0.201612221226]
    at org.eclipse.xtext.xbase.lib.IteratorExtensions.forEach(IteratorExtensions.java:363)[144:org.eclipse.xtext.xbase.lib:2.9.2]
    at org.eclipse.xtext.xbase.lib.IterableExtensions.forEach(IterableExtensions.java:333)[144:org.eclipse.xtext.xbase.lib:2.9.2]
    at org.eclipse.smarthome.model.thing.internal.GenericThingProvider.createThingsFromModelForThingHandlerFactory(GenericThingProvider.java:933)[131:org.eclipse.smarthome.model.thing:0.9.0.201612221226]
    at org.eclipse.smarthome.model.thing.internal.GenericThingProvider.access$1(GenericThingProvider.java:887)[131:org.eclipse.smarthome.model.thing:0.9.0.201612221226]
    at org.eclipse.smarthome.model.thing.internal.GenericThingProvider$1$1.apply(GenericThingProvider.java:228)[131:org.eclipse.smarthome.model.thing:0.9.0.201612221226]
    at org.eclipse.smarthome.model.thing.internal.GenericThingProvider$1$1.apply(GenericThingProvider.java:1)[131:org.eclipse.smarthome.model.thing:0.9.0.201612221226]
    at org.eclipse.xtext.xbase.lib.IteratorExtensions.forEach(IteratorExtensions.java:363)[144:org.eclipse.xtext.xbase.lib:2.9.2]
    at org.eclipse.xtext.xbase.lib.IterableExtensions.forEach(IterableExtensions.java:333)[144:org.eclipse.xtext.xbase.lib:2.9.2]
    at org.eclipse.smarthome.model.thing.internal.GenericThingProvider$1.apply(GenericThingProvider.java:231)[131:org.eclipse.smarthome.model.thing:0.9.0.201612221226]
    at org.eclipse.smarthome.model.thing.internal.GenericThingProvider$1.apply(GenericThingProvider.java:1)[131:org.eclipse.smarthome.model.thing:0.9.0.201612221226]
    at org.eclipse.smarthome.config.core.BundleProcessorVetoManager.applyActionFor(BundleProcessorVetoManager.java:121)[92:org.eclipse.smarthome.config.core:0.9.0.201612221226]
    at org.eclipse.smarthome.model.thing.internal.GenericThingProvider$6.apply(GenericThingProvider.java:302)[131:org.eclipse.smarthome.model.thing:0.9.0.201612221226]
    at org.eclipse.smarthome.model.thing.internal.GenericThingProvider$6.apply(GenericThingProvider.java:1)[131:org.eclipse.smarthome.model.thing:0.9.0.201612221226]
    at org.eclipse.xtext.xbase.lib.IteratorExtensions.forEach(IteratorExtensions.java:363)[144:org.eclipse.xtext.xbase.lib:2.9.2]
    at org.eclipse.xtext.xbase.lib.IterableExtensions.forEach(IterableExtensions.java:333)[144:org.eclipse.xtext.xbase.lib:2.9.2]
    at org.eclipse.smarthome.model.thing.internal.GenericThingProvider.createThingsFromModel(GenericThingProvider.java:305)[131:org.eclipse.smarthome.model.thing:0.9.0.201612221226]
    at org.eclipse.smarthome.model.thing.internal.GenericThingProvider.modelChanged(GenericThingProvider.java:825)[131:org.eclipse.smarthome.model.thing:0.9.0.201612221226]
    at org.eclipse.smarthome.model.core.internal.ModelRepositoryImpl.notifyListeners(ModelRepositoryImpl.java:207)[120:org.eclipse.smarthome.model.core:0.9.0.201612221226]
    at org.eclipse.smarthome.model.core.internal.ModelRepositoryImpl.addOrRefreshModel(ModelRepositoryImpl.java:120)[120:org.eclipse.smarthome.model.core:0.9.0.201612221226]
    at org.eclipse.smarthome.model.core.internal.folder.FolderObserver.checkFile(FolderObserver.java:270)[120:org.eclipse.smarthome.model.core:0.9.0.201612221226]
    at org.eclipse.smarthome.model.core.internal.folder.FolderObserver.access$1(FolderObserver.java:264)[120:org.eclipse.smarthome.model.core:0.9.0.201612221226]
    at org.eclipse.smarthome.model.core.internal.folder.FolderObserver$WatchQueueReader.processWatchEvent(FolderObserver.java:145)[120:org.eclipse.smarthome.model.core:0.9.0.201612221226]
    at org.eclipse.smarthome.core.service.AbstractWatchQueueReader.run(AbstractWatchQueueReader.java:122)[96:org.eclipse.smarthome.core:0.9.0.201612221226]
    at java.lang.Thread.run(Thread.java:745)[:1.8.0_111]
2017-01-03 11:00:23.610 [ERROR] [ore.thing.internal.ThingRegistryImpl] - Could not inform the ThingTracker 'org.eclipse.smarthome.core.thing.internal.ThingManager@19c0d3f' about the 'THING_UPDATED' event!
java.lang.NullPointerException
    at org.eclipse.smarthome.core.thing.internal.ThingManager.thingUpdated(ThingManager.java:542)[103:org.eclipse.smarthome.core.thing:0.9.0.201612221226]
    at org.eclipse.smarthome.core.thing.internal.ThingRegistryImpl.notifyTrackers(ThingRegistryImpl.java:227)[103:org.eclipse.smarthome.core.thing:0.9.0.201612221226]
    at org.eclipse.smarthome.core.thing.internal.ThingRegistryImpl.notifyListenersAboutUpdatedElement(ThingRegistryImpl.java:150)[103:org.eclipse.smarthome.core.thing:0.9.0.201612221226]
    at org.eclipse.smarthome.core.thing.internal.ThingRegistryImpl.notifyListenersAboutUpdatedElement(ThingRegistryImpl.java:1)[103:org.eclipse.smarthome.core.thing:0.9.0.201612221226]
    at org.eclipse.smarthome.core.common.registry.AbstractRegistry.updated(AbstractRegistry.java:167)[96:org.eclipse.smarthome.core:0.9.0.201612221226]
    at org.eclipse.smarthome.core.common.registry.AbstractProvider.notifyListeners(AbstractProvider.java:57)[96:org.eclipse.smarthome.core:0.9.0.201612221226]
    at org.eclipse.smarthome.core.common.registry.AbstractProvider.notifyListenersAboutUpdatedElement(AbstractProvider.java:82)[96:org.eclipse.smarthome.core:0.9.0.201612221226]
    at org.eclipse.smarthome.model.thing.internal.GenericThingProvider.access$4(GenericThingProvider.java:1)[131:org.eclipse.smarthome.model.thing:0.9.0.201612221226]
    at org.eclipse.smarthome.model.thing.internal.GenericThingProvider$18.apply(GenericThingProvider.java:923)[131:org.eclipse.smarthome.model.thing:0.9.0.201612221226]
    at org.eclipse.smarthome.model.thing.internal.GenericThingProvider$18.apply(GenericThingProvider.java:1)[131:org.eclipse.smarthome.model.thing:0.9.0.201612221226]
    at org.eclipse.xtext.xbase.lib.IteratorExtensions.forEach(IteratorExtensions.java:363)[144:org.eclipse.xtext.xbase.lib:2.9.2]
    at org.eclipse.xtext.xbase.lib.IterableExtensions.forEach(IterableExtensions.java:333)[144:org.eclipse.xtext.xbase.lib:2.9.2]
    at org.eclipse.smarthome.model.thing.internal.GenericThingProvider.createThingsFromModelForThingHandlerFactory(GenericThingProvider.java:933)[131:org.eclipse.smarthome.model.thing:0.9.0.201612221226]
    at org.eclipse.smarthome.model.thing.internal.GenericThingProvider.access$1(GenericThingProvider.java:887)[131:org.eclipse.smarthome.model.thing:0.9.0.201612221226]
    at org.eclipse.smarthome.model.thing.internal.GenericThingProvider$1$1.apply(GenericThingProvider.java:228)[131:org.eclipse.smarthome.model.thing:0.9.0.201612221226]
    at org.eclipse.smarthome.model.thing.internal.GenericThingProvider$1$1.apply(GenericThingProvider.java:1)[131:org.eclipse.smarthome.model.thing:0.9.0.201612221226]
    at org.eclipse.xtext.xbase.lib.IteratorExtensions.forEach(IteratorExtensions.java:363)[144:org.eclipse.xtext.xbase.lib:2.9.2]
    at org.eclipse.xtext.xbase.lib.IterableExtensions.forEach(IterableExtensions.java:333)[144:org.eclipse.xtext.xbase.lib:2.9.2]
    at org.eclipse.smarthome.model.thing.internal.GenericThingProvider$1.apply(GenericThingProvider.java:231)[131:org.eclipse.smarthome.model.thing:0.9.0.201612221226]
    at org.eclipse.smarthome.model.thing.internal.GenericThingProvider$1.apply(GenericThingProvider.java:1)[131:org.eclipse.smarthome.model.thing:0.9.0.201612221226]
    at org.eclipse.smarthome.config.core.BundleProcessorVetoManager.applyActionFor(BundleProcessorVetoManager.java:121)[92:org.eclipse.smarthome.config.core:0.9.0.201612221226]
    at org.eclipse.smarthome.model.thing.internal.GenericThingProvider$6.apply(GenericThingProvider.java:302)[131:org.eclipse.smarthome.model.thing:0.9.0.201612221226]
    at org.eclipse.smarthome.model.thing.internal.GenericThingProvider$6.apply(GenericThingProvider.java:1)[131:org.eclipse.smarthome.model.thing:0.9.0.201612221226]
    at org.eclipse.xtext.xbase.lib.IteratorExtensions.forEach(IteratorExtensions.java:363)[144:org.eclipse.xtext.xbase.lib:2.9.2]
    at org.eclipse.xtext.xbase.lib.IterableExtensions.forEach(IterableExtensions.java:333)[144:org.eclipse.xtext.xbase.lib:2.9.2]
    at org.eclipse.smarthome.model.thing.internal.GenericThingProvider.createThingsFromModel(GenericThingProvider.java:305)[131:org.eclipse.smarthome.model.thing:0.9.0.201612221226]
    at org.eclipse.smarthome.model.thing.internal.GenericThingProvider.modelChanged(GenericThingProvider.java:825)[131:org.eclipse.smarthome.model.thing:0.9.0.201612221226]
    at org.eclipse.smarthome.model.core.internal.ModelRepositoryImpl.notifyListeners(ModelRepositoryImpl.java:207)[120:org.eclipse.smarthome.model.core:0.9.0.201612221226]
    at org.eclipse.smarthome.model.core.internal.ModelRepositoryImpl.addOrRefreshModel(ModelRepositoryImpl.java:120)[120:org.eclipse.smarthome.model.core:0.9.0.201612221226]
    at org.eclipse.smarthome.model.core.internal.folder.FolderObserver.checkFile(FolderObserver.java:270)[120:org.eclipse.smarthome.model.core:0.9.0.201612221226]
    at org.eclipse.smarthome.model.core.internal.folder.FolderObserver.access$1(FolderObserver.java:264)[120:org.eclipse.smarthome.model.core:0.9.0.201612221226]
    at org.eclipse.smarthome.model.core.internal.folder.FolderObserver$WatchQueueReader.processWatchEvent(FolderObserver.java:145)[120:org.eclipse.smarthome.model.core:0.9.0.201612221226]
    at org.eclipse.smarthome.core.service.AbstractWatchQueueReader.run(AbstractWatchQueueReader.java:122)[96:org.eclipse.smarthome.core:0.9.0.201612221226]
    at java.lang.Thread.run(Thread.java:745)[:1.8.0_111]
2017-01-03 11:00:24.652 [ERROR] [ore.thing.internal.ThingRegistryImpl] - Could not inform the ThingTracker 'org.eclipse.smarthome.core.thing.internal.ThingManager@19c0d3f' about the 'THING_UPDATED' event!
java.lang.NullPointerException
    at org.eclipse.smarthome.core.thing.internal.ThingManager.thingUpdated(ThingManager.java:542)[103:org.eclipse.smarthome.core.thing:0.9.0.201612221226]
    at org.eclipse.smarthome.core.thing.internal.ThingRegistryImpl.notifyTrackers(ThingRegistryImpl.java:227)[103:org.eclipse.smarthome.core.thing:0.9.0.201612221226]
    at org.eclipse.smarthome.core.thing.internal.ThingRegistryImpl.notifyListenersAboutUpdatedElement(ThingRegistryImpl.java:150)[103:org.eclipse.smarthome.core.thing:0.9.0.201612221226]
    at org.eclipse.smarthome.core.thing.internal.ThingRegistryImpl.notifyListenersAboutUpdatedElement(ThingRegistryImpl.java:1)[103:org.eclipse.smarthome.core.thing:0.9.0.201612221226]
    at org.eclipse.smarthome.core.common.registry.AbstractRegistry.updated(AbstractRegistry.java:167)[96:org.eclipse.smarthome.core:0.9.0.201612221226]
    at org.eclipse.smarthome.core.common.registry.AbstractProvider.notifyListeners(AbstractProvider.java:57)[96:org.eclipse.smarthome.core:0.9.0.201612221226]
    at org.eclipse.smarthome.core.common.registry.AbstractProvider.notifyListenersAboutUpdatedElement(AbstractProvider.java:82)[96:org.eclipse.smarthome.core:0.9.0.201612221226]
    at org.eclipse.smarthome.model.thing.internal.GenericThingProvider.access$4(GenericThingProvider.java:1)[131:org.eclipse.smarthome.model.thing:0.9.0.201612221226]
    at org.eclipse.smarthome.model.thing.internal.GenericThingProvider$18.apply(GenericThingProvider.java:923)[131:org.eclipse.smarthome.model.thing:0.9.0.201612221226]
    at org.eclipse.smarthome.model.thing.internal.GenericThingProvider$18.apply(GenericThingProvider.java:1)[131:org.eclipse.smarthome.model.thing:0.9.0.201612221226]
    at org.eclipse.xtext.xbase.lib.IteratorExtensions.forEach(IteratorExtensions.java:363)[144:org.eclipse.xtext.xbase.lib:2.9.2]
    at org.eclipse.xtext.xbase.lib.IterableExtensions.forEach(IterableExtensions.java:333)[144:org.eclipse.xtext.xbase.lib:2.9.2]
    at org.eclipse.smarthome.model.thing.internal.GenericThingProvider.createThingsFromModelForThingHandlerFactory(GenericThingProvider.java:933)[131:org.eclipse.smarthome.model.thing:0.9.0.201612221226]
    at org.eclipse.smarthome.model.thing.internal.GenericThingProvider.access$1(GenericThingProvider.java:887)[131:org.eclipse.smarthome.model.thing:0.9.0.201612221226]
    at org.eclipse.smarthome.model.thing.internal.GenericThingProvider$1$1.apply(GenericThingProvider.java:228)[131:org.eclipse.smarthome.model.thing:0.9.0.201612221226]
    at org.eclipse.smarthome.model.thing.internal.GenericThingProvider$1$1.apply(GenericThingProvider.java:1)[131:org.eclipse.smarthome.model.thing:0.9.0.201612221226]
    at org.eclipse.xtext.xbase.lib.IteratorExtensions.forEach(IteratorExtensions.java:363)[144:org.eclipse.xtext.xbase.lib:2.9.2]
    at org.eclipse.xtext.xbase.lib.IterableExtensions.forEach(IterableExtensions.java:333)[144:org.eclipse.xtext.xbase.lib:2.9.2]
    at org.eclipse.smarthome.model.thing.internal.GenericThingProvider$1.apply(GenericThingProvider.java:231)[131:org.eclipse.smarthome.model.thing:0.9.0.201612221226]
    at org.eclipse.smarthome.model.thing.internal.GenericThingProvider$1.apply(GenericThingProvider.java:1)[131:org.eclipse.smarthome.model.thing:0.9.0.201612221226]
    at org.eclipse.smarthome.config.core.BundleProcessorVetoManager.applyActionFor(BundleProcessorVetoManager.java:121)[92:org.eclipse.smarthome.config.core:0.9.0.201612221226]
    at org.eclipse.smarthome.model.thing.internal.GenericThingProvider$6.apply(GenericThingProvider.java:302)[131:org.eclipse.smarthome.model.thing:0.9.0.201612221226]
    at org.eclipse.smarthome.model.thing.internal.GenericThingProvider$6.apply(GenericThingProvider.java:1)[131:org.eclipse.smarthome.model.thing:0.9.0.201612221226]
    at org.eclipse.xtext.xbase.lib.IteratorExtensions.forEach(IteratorExtensions.java:363)[144:org.eclipse.xtext.xbase.lib:2.9.2]
    at org.eclipse.xtext.xbase.lib.IterableExtensions.forEach(IterableExtensions.java:333)[144:org.eclipse.xtext.xbase.lib:2.9.2]
    at org.eclipse.smarthome.model.thing.internal.GenericThingProvider.createThingsFromModel(GenericThingProvider.java:305)[131:org.eclipse.smarthome.model.thing:0.9.0.201612221226]
    at org.eclipse.smarthome.model.thing.internal.GenericThingProvider.modelChanged(GenericThingProvider.java:825)[131:org.eclipse.smarthome.model.thing:0.9.0.201612221226]
    at org.eclipse.smarthome.model.core.internal.ModelRepositoryImpl.notifyListeners(ModelRepositoryImpl.java:207)[120:org.eclipse.smarthome.model.core:0.9.0.201612221226]
    at org.eclipse.smarthome.model.core.internal.ModelRepositoryImpl.addOrRefreshModel(ModelRepositoryImpl.java:120)[120:org.eclipse.smarthome.model.core:0.9.0.201612221226]
    at org.eclipse.smarthome.model.core.internal.folder.FolderObserver.checkFile(FolderObserver.java:270)[120:org.eclipse.smarthome.model.core:0.9.0.201612221226]
    at org.eclipse.smarthome.model.core.internal.folder.FolderObserver.access$1(FolderObserver.java:264)[120:org.eclipse.smarthome.model.core:0.9.0.201612221226]
    at org.eclipse.smarthome.model.core.internal.folder.FolderObserver$WatchQueueReader.processWatchEvent(FolderObserver.java:145)[120:org.eclipse.smarthome.model.core:0.9.0.201612221226]
    at org.eclipse.smarthome.core.service.AbstractWatchQueueReader.run(AbstractWatchQueueReader.java:122)[96:org.eclipse.smarthome.core:0.9.0.201612221226]
    at java.lang.Thread.run(Thread.java:745)[:1.8.0_111]
2017-01-03 11:00:24.697 [ERROR] [ore.thing.internal.ThingRegistryImpl] - Could not inform the ThingTracker 'org.eclipse.smarthome.core.thing.internal.ThingManager@19c0d3f' about the 'THING_UPDATED' event!
java.lang.NullPointerException
    at org.eclipse.smarthome.core.thing.internal.ThingManager.thingUpdated(ThingManager.java:542)[103:org.eclipse.smarthome.core.thing:0.9.0.201612221226]
    at org.eclipse.smarthome.core.thing.internal.ThingRegistryImpl.notifyTrackers(ThingRegistryImpl.java:227)[103:org.eclipse.smarthome.core.thing:0.9.0.201612221226]
    at org.eclipse.smarthome.core.thing.internal.ThingRegistryImpl.notifyListenersAboutUpdatedElement(ThingRegistryImpl.java:150)[103:org.eclipse.smarthome.core.thing:0.9.0.201612221226]
    at org.eclipse.smarthome.core.thing.internal.ThingRegistryImpl.notifyListenersAboutUpdatedElement(ThingRegistryImpl.java:1)[103:org.eclipse.smarthome.core.thing:0.9.0.201612221226]
    at org.eclipse.smarthome.core.common.registry.AbstractRegistry.updated(AbstractRegistry.java:167)[96:org.eclipse.smarthome.core:0.9.0.201612221226]
    at org.eclipse.smarthome.core.common.registry.AbstractProvider.notifyListeners(AbstractProvider.java:57)[96:org.eclipse.smarthome.core:0.9.0.201612221226]
    at org.eclipse.smarthome.core.common.registry.AbstractProvider.notifyListenersAboutUpdatedElement(AbstractProvider.java:82)[96:org.eclipse.smarthome.core:0.9.0.201612221226]
    at org.eclipse.smarthome.model.thing.internal.GenericThingProvider.access$4(GenericThingProvider.java:1)[131:org.eclipse.smarthome.model.thing:0.9.0.201612221226]
    at org.eclipse.smarthome.model.thing.internal.GenericThingProvider$18.apply(GenericThingProvider.java:923)[131:org.eclipse.smarthome.model.thing:0.9.0.201612221226]
    at org.eclipse.smarthome.model.thing.internal.GenericThingProvider$18.apply(GenericThingProvider.java:1)[131:org.eclipse.smarthome.model.thing:0.9.0.201612221226]
    at org.eclipse.xtext.xbase.lib.IteratorExtensions.forEach(IteratorExtensions.java:363)[144:org.eclipse.xtext.xbase.lib:2.9.2]
    at org.eclipse.xtext.xbase.lib.IterableExtensions.forEach(IterableExtensions.java:333)[144:org.eclipse.xtext.xbase.lib:2.9.2]
    at org.eclipse.smarthome.model.thing.internal.GenericThingProvider.createThingsFromModelForThingHandlerFactory(GenericThingProvider.java:933)[131:org.eclipse.smarthome.model.thing:0.9.0.201612221226]
    at org.eclipse.smarthome.model.thing.internal.GenericThingProvider.access$1(GenericThingProvider.java:887)[131:org.eclipse.smarthome.model.thing:0.9.0.201612221226]
    at org.eclipse.smarthome.model.thing.internal.GenericThingProvider$1$1.apply(GenericThingProvider.java:228)[131:org.eclipse.smarthome.model.thing:0.9.0.201612221226]
    at org.eclipse.smarthome.model.thing.internal.GenericThingProvider$1$1.apply(GenericThingProvider.java:1)[131:org.eclipse.smarthome.model.thing:0.9.0.201612221226]
    at org.eclipse.xtext.xbase.lib.IteratorExtensions.forEach(IteratorExtensions.java:363)[144:org.eclipse.xtext.xbase.lib:2.9.2]
    at org.eclipse.xtext.xbase.lib.IterableExtensions.forEach(IterableExtensions.java:333)[144:org.eclipse.xtext.xbase.lib:2.9.2]
    at org.eclipse.smarthome.model.thing.internal.GenericThingProvider$1.apply(GenericThingProvider.java:231)[131:org.eclipse.smarthome.model.thing:0.9.0.201612221226]
    at org.eclipse.smarthome.model.thing.internal.GenericThingProvider$1.apply(GenericThingProvider.java:1)[131:org.eclipse.smarthome.model.thing:0.9.0.201612221226]
    at org.eclipse.smarthome.config.core.BundleProcessorVetoManager.applyActionFor(BundleProcessorVetoManager.java:121)[92:org.eclipse.smarthome.config.core:0.9.0.201612221226]
    at org.eclipse.smarthome.model.thing.internal.GenericThingProvider$6.apply(GenericThingProvider.java:302)[131:org.eclipse.smarthome.model.thing:0.9.0.201612221226]
    at org.eclipse.smarthome.model.thing.internal.GenericThingProvider$6.apply(GenericThingProvider.java:1)[131:org.eclipse.smarthome.model.thing:0.9.0.201612221226]
    at org.eclipse.xtext.xbase.lib.IteratorExtensions.forEach(IteratorExtensions.java:363)[144:org.eclipse.xtext.xbase.lib:2.9.2]
    at org.eclipse.xtext.xbase.lib.IterableExtensions.forEach(IterableExtensions.java:333)[144:org.eclipse.xtext.xbase.lib:2.9.2]
    at org.eclipse.smarthome.model.thing.internal.GenericThingProvider.createThingsFromModel(GenericThingProvider.java:305)[131:org.eclipse.smarthome.model.thing:0.9.0.201612221226]
    at org.eclipse.smarthome.model.thing.internal.GenericThingProvider.modelChanged(GenericThingProvider.java:825)[131:org.eclipse.smarthome.model.thing:0.9.0.201612221226]
    at org.eclipse.smarthome.model.core.internal.ModelRepositoryImpl.notifyListeners(ModelRepositoryImpl.java:207)[120:org.eclipse.smarthome.model.core:0.9.0.201612221226]
    at org.eclipse.smarthome.model.core.internal.ModelRepositoryImpl.addOrRefreshModel(ModelRepositoryImpl.java:120)[120:org.eclipse.smarthome.model.core:0.9.0.201612221226]
    at org.eclipse.smarthome.model.core.internal.folder.FolderObserver.checkFile(FolderObserver.java:270)[120:org.eclipse.smarthome.model.core:0.9.0.201612221226]
    at org.eclipse.smarthome.model.core.internal.folder.FolderObserver.access$1(FolderObserver.java:264)[120:org.eclipse.smarthome.model.core:0.9.0.201612221226]
    at org.eclipse.smarthome.model.core.internal.folder.FolderObserver$WatchQueueReader.processWatchEvent(FolderObserver.java:145)[120:org.eclipse.smarthome.model.core:0.9.0.201612221226]
    at org.eclipse.smarthome.core.service.AbstractWatchQueueReader.run(AbstractWatchQueueReader.java:122)[96:org.eclipse.smarthome.core:0.9.0.201612221226]
    at java.lang.Thread.run(Thread.java:745)[:1.8.0_111]
metbril commented 7 years ago

Originally submitted here:

https://github.com/openhab/openhab2-addons/issues/1650

sjsf commented 7 years ago

On a first glance it looks like the GenericThingProvider still "knows" about the old Thing being there, so it informs its listeners about an update. On the other hand, the ThingManager (being of of these listeners) does NOT seem know the old version (anymore?).

I'm wondering why the ThingManager maintains its own cache at all and does not use the ThingRegistry.

I'm now trying to figure out why the data model became inconsistent... Maybe the root-case could be the dispose()-initialize() taking too long, but I'm not sure yet.

sjsf commented 7 years ago

Okay, wrong guess as it turns out...

It seems that the GenericThingProvider does not catch Things nested within the Bridge, assumes they are removed and informs its listeners accordingly. As a result, the "update" later on fails.

Now I'm only wondering if and why this ever worked an will provide a fix.

PS: As a work-around if you don't want to restart your OH every time, you could temporarily define your things like this:

Bridge rfxcom:bridge:1 [ serialPort="/dev/ttyUSB1" ] {}

Thing rfxcom:lighting2:remote1_1 (rfxcom:bridge:1) [deviceId="12260194.1", subType="AC"]
Thing rfxcom:lighting2:remote1_2 (rfxcom:bridge:1) [deviceId="12260194.2", subType="AC"]
Thing rfxcom:lighting2:remote1_3 (rfxcom:bridge:1) [deviceId="12260194.3", subType="AC"]
Thing rfxcom:lighting2:remote1_0 (rfxcom:bridge:1) [deviceId="12260194.0", subType="AC"]

Just keep in mind that you will end up with different UIDs in that case.

metbril commented 7 years ago

I actually copied this syntax from the example for the Hue binding, that has been there ages ago.

Bridge hue:bridge:1 [ ipAddress="192.168.0.64" ] {
    0210 bulb1 [ lightId="1" ]
    0220 bulb2 [ lightId="2" ]
}

https://github.com/eclipse/smarthome/blob/master/extensions/binding/org.eclipse.smarthome.binding.hue/README.md

sjsf commented 7 years ago

Yes, and this syntax is correct and your are fully right to use it - and until 3 weeks ago it actually was working. I only wanted to tell you about a workaround until the fix reaches your OH2 installation.