openHAB 4.0 Milestone discussion

ok, thanks for the tip. About ten hours running and all is normal

So i have also thought that 4.x builds have been extra “chatty” with item update events across a wide variety of items. I hesitated to mention anything as i believed most of this is from bindings polling, and updating channels at regular intervals (even though the values are the same), but i don’t remember seeing this volume of updates in the logs before. Also these updates then trigger Group updates, which compound the events, but again, maybe this is normal and i just did not notice it before?

EDIT
Missed @ccutrer post, this seems like my issue exactly. Thanks!

I didn’t follow the PR closely but two new Item events were created: ItemStateUpdatedEvent and GroupStateUpdatedEvent which were needed to better support UoM in events (only the Item knows what the UoM is supposed to be so the event needs to come from the Item) and provide a unique event to distinguish between ItemStateEvent which is telling an Item to change state and ItemStateUpdatedEvent which is the Item announcing it changed state. PR is Add ItemStateUpdatedEvent and enable group channel-links by J-N-K · Pull Request #3141 · openhab/openhab-core · GitHub.

But of course, if you keep your old log4j2.xml file after upgrading, the two new statements needed to suppress these new events in events.log will be missing.

Note, for particularly advanced rules writers, I believe that rules now trigger on the ItemStateUpdateEvent instead of ItemStateEvent so if you have a rule that does checks for the type of the event that triggered it you may need to make changes to your rule. For example, I had to add ItemStateUpdatedEvent to https://community.openhab.org/t/threshold-alert-and-open-reminder-4-0-0-0-4-1-0-0/144863:

...
//~~~~~~~~~~~~~ Body
// If triggered by anything other than an Item event, check the config
// Otherwise process the event to see if alerting is required
if(this.event === undefined) {
  console.debug('Rule triggered without an event, checking config.');
  init();
}
else {
  switch(event.type) {
    case 'ItemStateEvent':
    case 'ItemStateChangedEvent':
    case 'ItemStateUpdatedEvent':
      console.loggerName = loggerBase+'.'+event.itemName;
      console.debug('Processing an Item event');
      procEvent(event.itemName, stateToValue(event.itemState));
      break;
    default:
      console.debug('Rule triggered without an Item event, checking the rule config');
      cache.private.clear();
      init();
  }
}

I need to consider if I need to add GroupStateUpdatedEvent as well in case users of the template want to change the rule trigger.

so it ran away again
Here is result of top -H -p <pid of openHAB >:

  PID USER      PR  NI    VIRT    RES    SHR S %CPU %MEM     TIME+ COMMAND
22366 openhab   20   0 6331156 1.929g  24160 R 99.9 25.3 686:26.25 safeCall-queue                               
13386 openhab   20   0 6331156 1.929g  24160 S  0.3 25.3   1:04.75 OH-httpClient-c                              
13428 openhab   20   0 6331156 1.929g  24160 S  0.3 25.3   0:48.27 OH-usb-serial-d                              
13514 openhab   20   0 6331156 1.929g  24160 S  0.3 25.3   2:24.84 RXTXPortMonitor                              
13556 openhab   20   0 6331156 1.929g  24160 S  0.3 25.3   0:32.60 ZWaveReceiveInp                              
12869 openhab   20   0 6331156 1.929g  24160 S  0.0 25.3   0:00.00 java                                         
13022 openhab   20   0 6331156 1.929g  24160 S  0.0 25.3   0:00.58 java                                         
13023 openhab   20   0 6331156 1.929g  24160 S  0.0 25.3   0:04.63 GC Thread#0                                  
13024 openhab   20   0 6331156 1.929g  24160 S  0.0 25.3   0:00.01 G1 Main Marker                               
13025 openhab   20   0 6331156 1.929g  24160 S  0.0 25.3   0:01.12 G1 Conc#0                                    
13026 openhab   20   0 6331156 1.929g  24160 S  0.0 25.3   0:00.14 G1 Refine#0                                  
13027 openhab   20   0 6331156 1.929g  24160 S  0.0 25.3   0:41.21 G1 Service                                   
13028 openhab   20   0 6331156 1.929g  24160 S  0.0 25.3   0:04.58 VM Thread                                    
13029 openhab   20   0 6331156 1.929g  24160 S  0.0 25.3   0:00.06 Reference Handl                              
13030 openhab   20   0 6331156 1.929g  24160 S  0.0 25.3   0:00.02 Finalizer                                    
13031 openhab   20   0 6331156 1.929g  24160 S  0.0 25.3   0:00.00 Signal Dispatch                              
13032 openhab   20   0 6331156 1.929g  24160 S  0.0 25.3   0:01.63 Service Thread 

obviously safeCall-queue thread is pinning it
hope this helps somebody because I don’t have a clue

After updating I have some trouble with the marketplace too. Leading to eating up a lot of RAM & CPU, mostly freezed Main UI and (at least) the presistance is not working due to this.
the bundle id mentioned in the log is the marketplace itself.
Does anyone know what is going wrong here?
bundle:list:
151 │ Waiting │ 80 │ 4.0.0.M2 │ openHAB Core :: Bundles :: Marketplace Add-on Services

log:

2023-04-20 15:16:50.153 [ERROR] [ity.CommunityMarketplaceAddonService] - bundle org.openhab.core.addon.marketplace:4.0.0.M2 (151)[org.openhab.core.addon.marketplace.internal.community.CommunityMarketplaceAddonService(49)] : Error during instantiation of the implementation object

java.lang.reflect.InvocationTargetException: null

	at jdk.internal.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method) ~[?:?]

	at jdk.internal.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:77) ~[?:?]

	at jdk.internal.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45) ~[?:?]

	at java.lang.reflect.Constructor.newInstanceWithCaller(Constructor.java:499) ~[?:?]

	at java.lang.reflect.Constructor.newInstance(Constructor.java:480) ~[?:?]

	at org.apache.felix.scr.impl.inject.internal.ComponentConstructorImpl.newInstance(ComponentConstructorImpl.java:326) ~[?:?]

	at org.apache.felix.scr.impl.manager.SingleComponentManager.createImplementationObject(SingleComponentManager.java:286) ~[?:?]

	at org.apache.felix.scr.impl.manager.SingleComponentManager.createComponent(SingleComponentManager.java:115) ~[?:?]

	at org.apache.felix.scr.impl.manager.SingleComponentManager.getService(SingleComponentManager.java:1002) ~[?:?]

	at org.apache.felix.scr.impl.manager.SingleComponentManager.getServiceInternal(SingleComponentManager.java:975) ~[?:?]

	at org.apache.felix.scr.impl.manager.SingleComponentManager.getService(SingleComponentManager.java:920) ~[?:?]

	at org.eclipse.osgi.internal.serviceregistry.ServiceFactoryUse$1.run(ServiceFactoryUse.java:220) ~[org.eclipse.osgi-3.18.0.jar:?]

	at java.security.AccessController.doPrivileged(AccessController.java:318) ~[?:?]

	at org.eclipse.osgi.internal.serviceregistry.ServiceFactoryUse.factoryGetService(ServiceFactoryUse.java:217) ~[org.eclipse.osgi-3.18.0.jar:?]

	at org.eclipse.osgi.internal.serviceregistry.ServiceFactoryUse.getService(ServiceFactoryUse.java:118) ~[org.eclipse.osgi-3.18.0.jar:?]

	at org.eclipse.osgi.internal.serviceregistry.ServiceConsumer$2.getService(ServiceConsumer.java:48) ~[org.eclipse.osgi-3.18.0.jar:?]

	at org.eclipse.osgi.internal.serviceregistry.ServiceRegistrationImpl.getService(ServiceRegistrationImpl.java:547) ~[org.eclipse.osgi-3.18.0.jar:?]

	at org.eclipse.osgi.internal.serviceregistry.ServiceRegistry.getService(ServiceRegistry.java:534) ~[org.eclipse.osgi-3.18.0.jar:?]

	at org.eclipse.osgi.internal.framework.BundleContextImpl.getService(BundleContextImpl.java:660) ~[org.eclipse.osgi-3.18.0.jar:?]

	at org.apache.felix.scr.impl.manager.SingleRefPair.getServiceObject(SingleRefPair.java:88) ~[?:?]

	at org.apache.felix.scr.impl.inject.methods.BindMethod.getServiceObject(BindMethod.java:675) ~[?:?]

	at org.apache.felix.scr.impl.manager.DependencyManager.getServiceObject(DependencyManager.java:2612) ~[?:?]

	at org.apache.felix.scr.impl.manager.DependencyManager.doInvokeBindMethod(DependencyManager.java:2078) ~[?:?]

	at org.apache.felix.scr.impl.manager.DependencyManager.invokeBindMethod(DependencyManager.java:2061) ~[?:?]

	at org.apache.felix.scr.impl.manager.SingleComponentManager.invokeBindMethod(SingleComponentManager.java:443) ~[?:?]

	at org.apache.felix.scr.impl.manager.DependencyManager$MultipleDynamicCustomizer.addedService(DependencyManager.java:336) ~[?:?]

	at org.apache.felix.scr.impl.manager.DependencyManager$MultipleDynamicCustomizer.addedService(DependencyManager.java:304) ~[?:?]

	at org.apache.felix.scr.impl.manager.ServiceTracker$Tracked.customizerAdded(ServiceTracker.java:1232) ~[?:?]

	at org.apache.felix.scr.impl.manager.ServiceTracker$Tracked.customizerAdded(ServiceTracker.java:1152) ~[?:?]

	at org.apache.felix.scr.impl.manager.ServiceTracker$AbstractTracked.trackAdding(ServiceTracker.java:959) ~[?:?]

	at org.apache.felix.scr.impl.manager.ServiceTracker$AbstractTracked.track(ServiceTracker.java:895) ~[?:?]

	at org.apache.felix.scr.impl.manager.ServiceTracker$Tracked.serviceChanged(ServiceTracker.java:1184) ~[?:?]

	at org.apache.felix.scr.impl.BundleComponentActivator$ListenerInfo.serviceChanged(BundleComponentActivator.java:116) ~[?:?]

	at org.eclipse.osgi.internal.serviceregistry.FilteredServiceListener.serviceChanged(FilteredServiceListener.java:123) ~[org.eclipse.osgi-3.18.0.jar:?]

	at org.eclipse.osgi.internal.framework.BundleContextImpl.dispatchEvent(BundleContextImpl.java:961) ~[org.eclipse.osgi-3.18.0.jar:?]

	at org.eclipse.osgi.framework.eventmgr.EventManager.dispatchEvent(EventManager.java:234) ~[org.eclipse.osgi-3.18.0.jar:?]

	at org.eclipse.osgi.framework.eventmgr.ListenerQueue.dispatchEventSynchronous(ListenerQueue.java:151) ~[org.eclipse.osgi-3.18.0.jar:?]

	at org.eclipse.osgi.internal.serviceregistry.ServiceRegistry.publishServiceEventPrivileged(ServiceRegistry.java:937) ~[org.eclipse.osgi-3.18.0.jar:?]

	at org.eclipse.osgi.internal.serviceregistry.ServiceRegistry.publishServiceEvent(ServiceRegistry.java:874) ~[org.eclipse.osgi-3.18.0.jar:?]

	at org.eclipse.osgi.internal.serviceregistry.ServiceRegistrationImpl.register(ServiceRegistrationImpl.java:141) ~[org.eclipse.osgi-3.18.0.jar:?]

	at org.eclipse.osgi.internal.serviceregistry.ServiceRegistry.registerService(ServiceRegistry.java:262) ~[org.eclipse.osgi-3.18.0.jar:?]

	at org.eclipse.osgi.internal.framework.BundleContextImpl.registerService(BundleContextImpl.java:500) ~[org.eclipse.osgi-3.18.0.jar:?]

	at org.apache.felix.scr.impl.manager.AbstractComponentManager$3.register(AbstractComponentManager.java:929) ~[?:?]

	at org.apache.felix.scr.impl.manager.AbstractComponentManager$3.register(AbstractComponentManager.java:915) ~[?:?]

	at org.apache.felix.scr.impl.manager.RegistrationManager.changeRegistration(RegistrationManager.java:133) ~[?:?]

	at org.apache.felix.scr.impl.manager.AbstractComponentManager.registerService(AbstractComponentManager.java:984) ~[?:?]

	at org.apache.felix.scr.impl.manager.AbstractComponentManager.activateInternal(AbstractComponentManager.java:752) ~[?:?]

	at org.apache.felix.scr.impl.manager.DependencyManager$SingleStaticCustomizer.addedService(DependencyManager.java:1274) ~[?:?]

	at org.apache.felix.scr.impl.manager.DependencyManager$SingleStaticCustomizer.addedService(DependencyManager.java:1225) ~[?:?]

	at org.apache.felix.scr.impl.manager.ServiceTracker$Tracked.customizerAdded(ServiceTracker.java:1232) ~[?:?]

	at org.apache.felix.scr.impl.manager.ServiceTracker$Tracked.customizerAdded(ServiceTracker.java:1152) ~[?:?]

	at org.apache.felix.scr.impl.manager.ServiceTracker$AbstractTracked.trackAdding(ServiceTracker.java:959) ~[?:?]

	at org.apache.felix.scr.impl.manager.ServiceTracker$AbstractTracked.track(ServiceTracker.java:895) ~[?:?]

	at org.apache.felix.scr.impl.manager.ServiceTracker$Tracked.serviceChanged(ServiceTracker.java:1184) ~[?:?]

	at org.apache.felix.scr.impl.BundleComponentActivator$ListenerInfo.serviceChanged(BundleComponentActivator.java:116) ~[?:?]

	at org.eclipse.osgi.internal.serviceregistry.FilteredServiceListener.serviceChanged(FilteredServiceListener.java:123) ~[org.eclipse.osgi-3.18.0.jar:?]

	at org.eclipse.osgi.internal.framework.BundleContextImpl.dispatchEvent(BundleContextImpl.java:961) ~[org.eclipse.osgi-3.18.0.jar:?]

	at org.eclipse.osgi.framework.eventmgr.EventManager.dispatchEvent(EventManager.java:234) ~[org.eclipse.osgi-3.18.0.jar:?]

	at org.eclipse.osgi.framework.eventmgr.ListenerQueue.dispatchEventSynchronous(ListenerQueue.java:151) ~[org.eclipse.osgi-3.18.0.jar:?]

	at org.eclipse.osgi.internal.serviceregistry.ServiceRegistry.publishServiceEventPrivileged(ServiceRegistry.java:937) ~[org.eclipse.osgi-3.18.0.jar:?]

	at org.eclipse.osgi.internal.serviceregistry.ServiceRegistry.publishServiceEvent(ServiceRegistry.java:874) ~[org.eclipse.osgi-3.18.0.jar:?]

	at org.eclipse.osgi.internal.serviceregistry.ServiceRegistrationImpl.register(ServiceRegistrationImpl.java:141) ~[org.eclipse.osgi-3.18.0.jar:?]

	at org.eclipse.osgi.internal.serviceregistry.ServiceRegistry.registerService(ServiceRegistry.java:262) ~[org.eclipse.osgi-3.18.0.jar:?]

	at org.eclipse.osgi.internal.framework.BundleContextImpl.registerService(BundleContextImpl.java:500) ~[org.eclipse.osgi-3.18.0.jar:?]

	at org.apache.felix.scr.impl.manager.AbstractComponentManager$3.register(AbstractComponentManager.java:929) ~[?:?]

	at org.apache.felix.scr.impl.manager.AbstractComponentManager$3.register(AbstractComponentManager.java:915) ~[?:?]

	at org.apache.felix.scr.impl.manager.RegistrationManager.changeRegistration(RegistrationManager.java:133) ~[?:?]

	at org.apache.felix.scr.impl.manager.AbstractComponentManager.registerService(AbstractComponentManager.java:984) ~[?:?]

	at org.apache.felix.scr.impl.manager.AbstractComponentManager.activateInternal(AbstractComponentManager.java:752) ~[?:?]

	at org.apache.felix.scr.impl.manager.AbstractComponentManager.enableInternal(AbstractComponentManager.java:674) ~[?:?]

	at org.apache.felix.scr.impl.manager.AbstractComponentManager.enable(AbstractComponentManager.java:437) ~[?:?]

	at org.apache.felix.scr.impl.manager.ConfigurableComponentHolder.enableComponents(ConfigurableComponentHolder.java:671) ~[?:?]

	at org.apache.felix.scr.impl.BundleComponentActivator.initialEnable(BundleComponentActivator.java:310) ~[?:?]

	at org.apache.felix.scr.impl.Activator.loadComponents(Activator.java:593) ~[?:?]

	at org.apache.felix.scr.impl.Activator.access$200(Activator.java:74) ~[?:?]

	at org.apache.felix.scr.impl.Activator$ScrExtension.start(Activator.java:460) ~[?:?]

	at org.apache.felix.scr.impl.AbstractExtender.createExtension(AbstractExtender.java:196) ~[?:?]

	at org.apache.felix.scr.impl.AbstractExtender.modifiedBundle(AbstractExtender.java:169) ~[?:?]

	at org.apache.felix.scr.impl.AbstractExtender.modifiedBundle(AbstractExtender.java:49) ~[?:?]

	at org.osgi.util.tracker.BundleTracker$Tracked.customizerModified(BundleTracker.java:488) ~[osgi.core-8.0.0.jar:?]

	at org.osgi.util.tracker.BundleTracker$Tracked.customizerModified(BundleTracker.java:420) ~[osgi.core-8.0.0.jar:?]

	at org.osgi.util.tracker.AbstractTracked.track(AbstractTracked.java:232) ~[osgi.core-8.0.0.jar:?]

	at org.osgi.util.tracker.BundleTracker$Tracked.bundleChanged(BundleTracker.java:450) ~[osgi.core-8.0.0.jar:?]

	at org.eclipse.osgi.internal.framework.BundleContextImpl.dispatchEvent(BundleContextImpl.java:949) ~[org.eclipse.osgi-3.18.0.jar:?]

	at org.eclipse.osgi.framework.eventmgr.EventManager.dispatchEvent(EventManager.java:234) ~[org.eclipse.osgi-3.18.0.jar:?]

	at org.eclipse.osgi.framework.eventmgr.ListenerQueue.dispatchEventSynchronous(ListenerQueue.java:151) ~[org.eclipse.osgi-3.18.0.jar:?]

	at org.eclipse.osgi.internal.framework.EquinoxEventPublisher.publishBundleEventPrivileged(EquinoxEventPublisher.java:229) ~[org.eclipse.osgi-3.18.0.jar:?]

	at org.eclipse.osgi.internal.framework.EquinoxEventPublisher.publishBundleEvent(EquinoxEventPublisher.java:138) ~[org.eclipse.osgi-3.18.0.jar:?]

	at org.eclipse.osgi.internal.framework.EquinoxEventPublisher.publishBundleEvent(EquinoxEventPublisher.java:130) ~[org.eclipse.osgi-3.18.0.jar:?]

	at org.eclipse.osgi.internal.framework.EquinoxContainerAdaptor.publishModuleEvent(EquinoxContainerAdaptor.java:217) ~[org.eclipse.osgi-3.18.0.jar:?]

	at org.eclipse.osgi.container.Module.publishEvent(Module.java:499) ~[org.eclipse.osgi-3.18.0.jar:?]

	at org.eclipse.osgi.container.Module.start(Module.java:486) ~[org.eclipse.osgi-3.18.0.jar:?]

	at org.eclipse.osgi.container.ModuleContainer$ContainerStartLevel$2.run(ModuleContainer.java:1847) ~[org.eclipse.osgi-3.18.0.jar:?]

	at org.eclipse.osgi.internal.framework.EquinoxContainerAdaptor$1$1.execute(EquinoxContainerAdaptor.java:136) ~[org.eclipse.osgi-3.18.0.jar:?]

	at org.eclipse.osgi.container.ModuleContainer$ContainerStartLevel.incStartLevel(ModuleContainer.java:1840) ~[org.eclipse.osgi-3.18.0.jar:?]

	at org.eclipse.osgi.container.ModuleContainer$ContainerStartLevel.incStartLevel(ModuleContainer.java:1783) ~[org.eclipse.osgi-3.18.0.jar:?]

	at org.eclipse.osgi.container.ModuleContainer$ContainerStartLevel.doContainerStartLevel(ModuleContainer.java:1745) ~[org.eclipse.osgi-3.18.0.jar:?]

	at org.eclipse.osgi.container.ModuleContainer$ContainerStartLevel.dispatchEvent(ModuleContainer.java:1667) ~[org.eclipse.osgi-3.18.0.jar:?]

	at org.eclipse.osgi.container.ModuleContainer$ContainerStartLevel.dispatchEvent(ModuleContainer.java:1) ~[org.eclipse.osgi-3.18.0.jar:?]

	at org.eclipse.osgi.framework.eventmgr.EventManager.dispatchEvent(EventManager.java:234) ~[org.eclipse.osgi-3.18.0.jar:?]

	at org.eclipse.osgi.framework.eventmgr.EventManager$EventThread.run(EventManager.java:345) ~[org.eclipse.osgi-3.18.0.jar:?]

Caused by: com.google.gson.JsonSyntaxException: java.lang.IllegalStateException: Expected BEGIN_ARRAY but was STRING at line 1 column 5662 path $.countries

	at com.google.gson.internal.bind.ReflectiveTypeAdapterFactory$Adapter.read(ReflectiveTypeAdapterFactory.java:270) ~[?:?]

	at com.google.gson.Gson.fromJson(Gson.java:1058) ~[?:?]

	at com.google.gson.Gson.fromJson(Gson.java:1016) ~[?:?]

	at com.google.gson.Gson.fromJson(Gson.java:959) ~[?:?]

	at com.google.gson.Gson.fromJson(Gson.java:927) ~[?:?]

	at org.openhab.core.addon.marketplace.AbstractRemoteAddonService.lambda$2(AbstractRemoteAddonService.java:93) ~[?:?]

	at java.util.stream.ReferencePipeline$3$1.accept(ReferencePipeline.java:197) ~[?:?]

	at java.util.stream.ReferencePipeline$3$1.accept(ReferencePipeline.java:197) ~[?:?]

	at java.util.concurrent.ConcurrentHashMap$KeySpliterator.forEachRemaining(ConcurrentHashMap.java:3573) ~[?:?]

	at java.util.stream.AbstractPipeline.copyInto(AbstractPipeline.java:509) ~[?:?]

	at java.util.stream.AbstractPipeline.wrapAndCopyInto(AbstractPipeline.java:499) ~[?:?]

	at java.util.stream.ForEachOps$ForEachOp.evaluateSequential(ForEachOps.java:150) ~[?:?]

	at java.util.stream.ForEachOps$ForEachOp$OfRef.evaluateSequential(ForEachOps.java:173) ~[?:?]

	at java.util.stream.AbstractPipeline.evaluate(AbstractPipeline.java:234) ~[?:?]

	at java.util.stream.ReferencePipeline.forEach(ReferencePipeline.java:596) ~[?:?]

	at org.openhab.core.addon.marketplace.AbstractRemoteAddonService.refreshSource(AbstractRemoteAddonService.java:94) ~[?:?]

	at org.openhab.core.addon.marketplace.internal.community.CommunityMarketplaceAddonService.modified(CommunityMarketplaceAddonService.java:131) ~[?:?]

	at org.openhab.core.addon.marketplace.internal.community.CommunityMarketplaceAddonService.<init>(CommunityMarketplaceAddonService.java:120) ~[?:?]

	... 101 more

Caused by: java.lang.IllegalStateException: Expected BEGIN_ARRAY but was STRING at line 1 column 5662 path $.countries

	at com.google.gson.stream.JsonReader.beginArray(JsonReader.java:360) ~[?:?]

	at com.google.gson.internal.bind.CollectionTypeAdapterFactory$Adapter.read(CollectionTypeAdapterFactory.java:80) ~[?:?]

	at com.google.gson.internal.bind.CollectionTypeAdapterFactory$Adapter.read(CollectionTypeAdapterFactory.java:61) ~[?:?]

	at com.google.gson.internal.bind.ReflectiveTypeAdapterFactory$1.read(ReflectiveTypeAdapterFactory.java:161) ~[?:?]

	at com.google.gson.internal.bind.ReflectiveTypeAdapterFactory$Adapter.read(ReflectiveTypeAdapterFactory.java:266) ~[?:?]

	at com.google.gson.Gson.fromJson(Gson.java:1058) ~[?:?]

	at com.google.gson.Gson.fromJson(Gson.java:1016) ~[?:?]

	at com.google.gson.Gson.fromJson(Gson.java:959) ~[?:?]

	at com.google.gson.Gson.fromJson(Gson.java:927) ~[?:?]

	at org.openhab.core.addon.marketplace.AbstractRemoteAddonService.lambda$2(AbstractRemoteAddonService.java:93) ~[?:?]

	at java.util.stream.ReferencePipeline$3$1.accept(ReferencePipeline.java:197) ~[?:?]

	at java.util.stream.ReferencePipeline$3$1.accept(ReferencePipeline.java:197) ~[?:?]

	at java.util.concurrent.ConcurrentHashMap$KeySpliterator.forEachRemaining(ConcurrentHashMap.java:3573) ~[?:?]

	at java.util.stream.AbstractPipeline.copyInto(AbstractPipeline.java:509) ~[?:?]

	at java.util.stream.AbstractPipeline.wrapAndCopyInto(AbstractPipeline.java:499) ~[?:?]

	at java.util.stream.ForEachOps$ForEachOp.evaluateSequential(ForEachOps.java:150) ~[?:?]

	at java.util.stream.ForEachOps$ForEachOp$OfRef.evaluateSequential(ForEachOps.java:173) ~[?:?]

	at java.util.stream.AbstractPipeline.evaluate(AbstractPipeline.java:234) ~[?:?]

	at java.util.stream.ReferencePipeline.forEach(ReferencePipeline.java:596) ~[?:?]

	at org.openhab.core.addon.marketplace.AbstractRemoteAddonService.refreshSource(AbstractRemoteAddonService.java:94) ~[?:?]

	at org.openhab.core.addon.marketplace.internal.community.CommunityMarketplaceAddonService.modified(CommunityMarketplaceAddonService.java:131) ~[?:?]

	at org.openhab.core.addon.marketplace.internal.community.CommunityMarketplaceAddonService.<init>(CommunityMarketplaceAddonService.java:120) ~[?:?]

	... 101 more

2023-04-20 15:16:50.180 [WARN ] [t.core.internal.addons.AddonResource] - bundle org.openhab.core.io.rest.core:4.0.0.M2 (177)[org.openhab.core.io.rest.core.internal.addons.AddonResource(165)] : Could not get service from ref {org.openhab.core.addon.AddonService}={service.id=354, service.bundleid=151, service.scope=bundle, osgi.ds.satisfying.condition.target=(osgi.condition.id=true), showUnpublished=false, component.name=org.openhab.core.addon.marketplace.internal.community.CommunityMarketplaceAddonService, service.config.label=Community Marketplace, component.id=49, service.config.factory=false, service.config.category=system, service.config.description.uri=system:marketplace, service.pid=[org.openhab.marketplace, org.openhab.marketplace], enable=true}

2023-04-20 15:16:50.181 [WARN ] [t.core.internal.addons.AddonResource] - bundle org.openhab.core.io.rest.core:4.0.0.M2 (177)[org.openhab.core.io.rest.core.internal.addons.AddonResource(165)] : DependencyManager : invokeBindMethod : Service not available from service registry for ServiceReference {org.openhab.core.addon.AddonService}={service.id=354, service.bundleid=151, service.scope=bundle, osgi.ds.satisfying.condition.target=(osgi.condition.id=true), showUnpublished=false, component.name=org.openhab.core.addon.marketplace.internal.community.CommunityMarketplaceAddonService, service.config.label=Community Marketplace, component.id=49, service.config.factory=false, service.config.category=system, service.config.description.uri=system:marketplace, service.pid=[org.openhab.marketplace, org.openhab.marketplace], enable=true} for reference AddonService

2023-04-20 15:16:50.189 [ERROR] [ity.CommunityMarketplaceAddonService] - bundle org.openhab.core.addon.marketplace:4.0.0.M2 (151)[org.openhab.core.addon.marketplace.internal.community.CommunityMarketplaceAddonService(49)] : Error during instantiation of the implementation object

java.lang.reflect.InvocationTargetException: null

	at jdk.internal.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method) ~[?:?]

	at jdk.internal.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:77) ~[?:?]

	at jdk.internal.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45) ~[?:?]

	at java.lang.reflect.Constructor.newInstanceWithCaller(Constructor.java:499) ~[?:?]

	at java.lang.reflect.Constructor.newInstance(Constructor.java:480) ~[?:?]

	at org.apache.felix.scr.impl.inject.internal.ComponentConstructorImpl.newInstance(ComponentConstructorImpl.java:326) ~[?:?]

	at org.apache.felix.scr.impl.manager.SingleComponentManager.createImplementationObject(SingleComponentManager.java:286) ~[?:?]

	at org.apache.felix.scr.impl.manager.SingleComponentManager.createComponent(SingleComponentManager.java:115) ~[?:?]

	at org.apache.felix.scr.impl.manager.SingleComponentManager.getService(SingleComponentManager.java:1002) ~[?:?]

	at org.apache.felix.scr.impl.manager.SingleComponentManager.getServiceInternal(SingleComponentManager.java:975) ~[?:?]

	at org.apache.felix.scr.impl.manager.AbstractComponentManager.activateInternal(AbstractComponentManager.java:776) ~[?:?]

	at org.apache.felix.scr.impl.manager.DependencyManager$SingleStaticCustomizer.addedService(DependencyManager.java:1274) ~[?:?]

	at org.apache.felix.scr.impl.manager.DependencyManager$SingleStaticCustomizer.addedService(DependencyManager.java:1225) ~[?:?]

	at org.apache.felix.scr.impl.manager.ServiceTracker$Tracked.customizerAdded(ServiceTracker.java:1232) ~[?:?]

	at org.apache.felix.scr.impl.manager.ServiceTracker$Tracked.customizerAdded(ServiceTracker.java:1152) ~[?:?]

	at org.apache.felix.scr.impl.manager.ServiceTracker$AbstractTracked.trackAdding(ServiceTracker.java:959) ~[?:?]

	at org.apache.felix.scr.impl.manager.ServiceTracker$AbstractTracked.track(ServiceTracker.java:895) ~[?:?]

	at org.apache.felix.scr.impl.manager.ServiceTracker$Tracked.serviceChanged(ServiceTracker.java:1184) ~[?:?]

	at org.apache.felix.scr.impl.BundleComponentActivator$ListenerInfo.serviceChanged(BundleComponentActivator.java:116) ~[?:?]

	at org.eclipse.osgi.internal.serviceregistry.FilteredServiceListener.serviceChanged(FilteredServiceListener.java:123) ~[org.eclipse.osgi-3.18.0.jar:?]

	at org.eclipse.osgi.internal.framework.BundleContextImpl.dispatchEvent(BundleContextImpl.java:961) ~[org.eclipse.osgi-3.18.0.jar:?]

	at org.eclipse.osgi.framework.eventmgr.EventManager.dispatchEvent(EventManager.java:234) ~[org.eclipse.osgi-3.18.0.jar:?]

	at org.eclipse.osgi.framework.eventmgr.ListenerQueue.dispatchEventSynchronous(ListenerQueue.java:151) ~[org.eclipse.osgi-3.18.0.jar:?]

	at org.eclipse.osgi.internal.serviceregistry.ServiceRegistry.publishServiceEventPrivileged(ServiceRegistry.java:937) ~[org.eclipse.osgi-3.18.0.jar:?]

	at org.eclipse.osgi.internal.serviceregistry.ServiceRegistry.publishServiceEvent(ServiceRegistry.java:874) ~[org.eclipse.osgi-3.18.0.jar:?]

	at org.eclipse.osgi.internal.serviceregistry.ServiceRegistrationImpl.register(ServiceRegistrationImpl.java:141) ~[org.eclipse.osgi-3.18.0.jar:?]

	at org.eclipse.osgi.internal.serviceregistry.ServiceRegistry.registerService(ServiceRegistry.java:262) ~[org.eclipse.osgi-3.18.0.jar:?]

	at org.eclipse.osgi.internal.framework.BundleContextImpl.registerService(BundleContextImpl.java:500) ~[org.eclipse.osgi-3.18.0.jar:?]

	at org.apache.felix.scr.impl.manager.AbstractComponentManager$3.register(AbstractComponentManager.java:929) ~[?:?]

	at org.apache.felix.scr.impl.manager.AbstractComponentManager$3.register(AbstractComponentManager.java:915) ~[?:?]

	at org.apache.felix.scr.impl.manager.RegistrationManager.changeRegistration(RegistrationManager.java:133) ~[?:?]

	at org.apache.felix.scr.impl.manager.AbstractComponentManager.registerService(AbstractComponentManager.java:984) ~[?:?]

	at org.apache.felix.scr.impl.manager.AbstractComponentManager.activateInternal(AbstractComponentManager.java:752) ~[?:?]

	at org.apache.felix.scr.impl.manager.AbstractComponentManager.enableInternal(AbstractComponentManager.java:674) ~[?:?]

	at org.apache.felix.scr.impl.manager.AbstractComponentManager.enable(AbstractComponentManager.java:437) ~[?:?]

	at org.apache.felix.scr.impl.manager.ConfigurableComponentHolder.enableComponents(ConfigurableComponentHolder.java:671) ~[?:?]

	at org.apache.felix.scr.impl.BundleComponentActivator.initialEnable(BundleComponentActivator.java:310) ~[?:?]

	at org.apache.felix.scr.impl.Activator.loadComponents(Activator.java:593) ~[?:?]

	at org.apache.felix.scr.impl.Activator.access$200(Activator.java:74) ~[?:?]

	at org.apache.felix.scr.impl.Activator$ScrExtension.start(Activator.java:460) ~[?:?]

	at org.apache.felix.scr.impl.AbstractExtender.createExtension(AbstractExtender.java:196) ~[?:?]

	at org.apache.felix.scr.impl.AbstractExtender.modifiedBundle(AbstractExtender.java:169) ~[?:?]

	at org.apache.felix.scr.impl.AbstractExtender.modifiedBundle(AbstractExtender.java:49) ~[?:?]

	at org.osgi.util.tracker.BundleTracker$Tracked.customizerModified(BundleTracker.java:488) ~[osgi.core-8.0.0.jar:?]

	at org.osgi.util.tracker.BundleTracker$Tracked.customizerModified(BundleTracker.java:420) ~[osgi.core-8.0.0.jar:?]

	at org.osgi.util.tracker.AbstractTracked.track(AbstractTracked.java:232) ~[osgi.core-8.0.0.jar:?]

	at org.osgi.util.tracker.BundleTracker$Tracked.bundleChanged(BundleTracker.java:450) ~[osgi.core-8.0.0.jar:?]

	at org.eclipse.osgi.internal.framework.BundleContextImpl.dispatchEvent(BundleContextImpl.java:949) ~[org.eclipse.osgi-3.18.0.jar:?]

	at org.eclipse.osgi.framework.eventmgr.EventManager.dispatchEvent(EventManager.java:234) ~[org.eclipse.osgi-3.18.0.jar:?]

	at org.eclipse.osgi.framework.eventmgr.ListenerQueue.dispatchEventSynchronous(ListenerQueue.java:151) ~[org.eclipse.osgi-3.18.0.jar:?]

	at org.eclipse.osgi.internal.framework.EquinoxEventPublisher.publishBundleEventPrivileged(EquinoxEventPublisher.java:229) ~[org.eclipse.osgi-3.18.0.jar:?]

	at org.eclipse.osgi.internal.framework.EquinoxEventPublisher.publishBundleEvent(EquinoxEventPublisher.java:138) ~[org.eclipse.osgi-3.18.0.jar:?]

	at org.eclipse.osgi.internal.framework.EquinoxEventPublisher.publishBundleEvent(EquinoxEventPublisher.java:130) ~[org.eclipse.osgi-3.18.0.jar:?]

	at org.eclipse.osgi.internal.framework.EquinoxContainerAdaptor.publishModuleEvent(EquinoxContainerAdaptor.java:217) ~[org.eclipse.osgi-3.18.0.jar:?]

	at org.eclipse.osgi.container.Module.publishEvent(Module.java:499) ~[org.eclipse.osgi-3.18.0.jar:?]

	at org.eclipse.osgi.container.Module.start(Module.java:486) ~[org.eclipse.osgi-3.18.0.jar:?]

	at org.eclipse.osgi.container.ModuleContainer$ContainerStartLevel$2.run(ModuleContainer.java:1847) ~[org.eclipse.osgi-3.18.0.jar:?]

	at org.eclipse.osgi.internal.framework.EquinoxContainerAdaptor$1$1.execute(EquinoxContainerAdaptor.java:136) ~[org.eclipse.osgi-3.18.0.jar:?]

	at org.eclipse.osgi.container.ModuleContainer$ContainerStartLevel.incStartLevel(ModuleContainer.java:1840) ~[org.eclipse.osgi-3.18.0.jar:?]

	at org.eclipse.osgi.container.ModuleContainer$ContainerStartLevel.incStartLevel(ModuleContainer.java:1783) ~[org.eclipse.osgi-3.18.0.jar:?]

	at org.eclipse.osgi.container.ModuleContainer$ContainerStartLevel.doContainerStartLevel(ModuleContainer.java:1745) ~[org.eclipse.osgi-3.18.0.jar:?]

	at org.eclipse.osgi.container.ModuleContainer$ContainerStartLevel.dispatchEvent(ModuleContainer.java:1667) ~[org.eclipse.osgi-3.18.0.jar:?]

	at org.eclipse.osgi.container.ModuleContainer$ContainerStartLevel.dispatchEvent(ModuleContainer.java:1) ~[org.eclipse.osgi-3.18.0.jar:?]

	at org.eclipse.osgi.framework.eventmgr.EventManager.dispatchEvent(EventManager.java:234) ~[org.eclipse.osgi-3.18.0.jar:?]

	at org.eclipse.osgi.framework.eventmgr.EventManager$EventThread.run(EventManager.java:345) ~[org.eclipse.osgi-3.18.0.jar:?]

Caused by: com.google.gson.JsonSyntaxException: java.lang.IllegalStateException: Expected BEGIN_ARRAY but was STRING at line 1 column 5662 path $.countries

	at com.google.gson.internal.bind.ReflectiveTypeAdapterFactory$Adapter.read(ReflectiveTypeAdapterFactory.java:270) ~[?:?]

	at com.google.gson.Gson.fromJson(Gson.java:1058) ~[?:?]

	at com.google.gson.Gson.fromJson(Gson.java:1016) ~[?:?]

	at com.google.gson.Gson.fromJson(Gson.java:959) ~[?:?]

	at com.google.gson.Gson.fromJson(Gson.java:927) ~[?:?]

	at org.openhab.core.addon.marketplace.AbstractRemoteAddonService.lambda$2(AbstractRemoteAddonService.java:93) ~[?:?]

	at java.util.stream.ReferencePipeline$3$1.accept(ReferencePipeline.java:197) ~[?:?]

	at java.util.stream.ReferencePipeline$3$1.accept(ReferencePipeline.java:197) ~[?:?]

	at java.util.concurrent.ConcurrentHashMap$KeySpliterator.forEachRemaining(ConcurrentHashMap.java:3573) ~[?:?]

	at java.util.stream.AbstractPipeline.copyInto(AbstractPipeline.java:509) ~[?:?]

	at java.util.stream.AbstractPipeline.wrapAndCopyInto(AbstractPipeline.java:499) ~[?:?]

	at java.util.stream.ForEachOps$ForEachOp.evaluateSequential(ForEachOps.java:150) ~[?:?]

	at java.util.stream.ForEachOps$ForEachOp$OfRef.evaluateSequential(ForEachOps.java:173) ~[?:?]

	at java.util.stream.AbstractPipeline.evaluate(AbstractPipeline.java:234) ~[?:?]

	at java.util.stream.ReferencePipeline.forEach(ReferencePipeline.java:596) ~[?:?]

	at org.openhab.core.addon.marketplace.AbstractRemoteAddonService.refreshSource(AbstractRemoteAddonService.java:94) ~[?:?]

	at org.openhab.core.addon.marketplace.internal.community.CommunityMarketplaceAddonService.modified(CommunityMarketplaceAddonService.java:131) ~[?:?]

	at org.openhab.core.addon.marketplace.internal.community.CommunityMarketplaceAddonService.<init>(CommunityMarketplaceAddonService.java:120) ~[?:?]

	... 65 more

Caused by: java.lang.IllegalStateException: Expected BEGIN_ARRAY but was STRING at line 1 column 5662 path $.countries

	at com.google.gson.stream.JsonReader.beginArray(JsonReader.java:360) ~[?:?]

	at com.google.gson.internal.bind.CollectionTypeAdapterFactory$Adapter.read(CollectionTypeAdapterFactory.java:80) ~[?:?]

	at com.google.gson.internal.bind.CollectionTypeAdapterFactory$Adapter.read(CollectionTypeAdapterFactory.java:61) ~[?:?]

	at com.google.gson.internal.bind.ReflectiveTypeAdapterFactory$1.read(ReflectiveTypeAdapterFactory.java:161) ~[?:?]

	at com.google.gson.internal.bind.ReflectiveTypeAdapterFactory$Adapter.read(ReflectiveTypeAdapterFactory.java:266) ~[?:?]

	at com.google.gson.Gson.fromJson(Gson.java:1058) ~[?:?]

	at com.google.gson.Gson.fromJson(Gson.java:1016) ~[?:?]

	at com.google.gson.Gson.fromJson(Gson.java:959) ~[?:?]

	at com.google.gson.Gson.fromJson(Gson.java:927) ~[?:?]

	at org.openhab.core.addon.marketplace.AbstractRemoteAddonService.lambda$2(AbstractRemoteAddonService.java:93) ~[?:?]

	at java.util.stream.ReferencePipeline$3$1.accept(ReferencePipeline.java:197) ~[?:?]

	at java.util.stream.ReferencePipeline$3$1.accept(ReferencePipeline.java:197) ~[?:?]

	at java.util.concurrent.ConcurrentHashMap$KeySpliterator.forEachRemaining(ConcurrentHashMap.java:3573) ~[?:?]

	at java.util.stream.AbstractPipeline.copyInto(AbstractPipeline.java:509) ~[?:?]

	at java.util.stream.AbstractPipeline.wrapAndCopyInto(AbstractPipeline.java:499) ~[?:?]

	at java.util.stream.ForEachOps$ForEachOp.evaluateSequential(ForEachOps.java:150) ~[?:?]

	at java.util.stream.ForEachOps$ForEachOp$OfRef.evaluateSequential(ForEachOps.java:173) ~[?:?]

	at java.util.stream.AbstractPipeline.evaluate(AbstractPipeline.java:234) ~[?:?]

	at java.util.stream.ReferencePipeline.forEach(ReferencePipeline.java:596) ~[?:?]

	at org.openhab.core.addon.marketplace.AbstractRemoteAddonService.refreshSource(AbstractRemoteAddonService.java:94) ~[?:?]

	at org.openhab.core.addon.marketplace.internal.community.CommunityMarketplaceAddonService.modified(CommunityMarketplaceAddonService.java:131) ~[?:?]

	at org.openhab.core.addon.marketplace.internal.community.CommunityMarketplaceAddonService.<init>(CommunityMarketplaceAddonService.java:120) ~[?:?]

	... 65 more

2023-04-20 15:16:52.727 [INFO ] [.core.model.lsp.internal.ModelServer] - Started Language Server Protocol (LSP) service on port 5007

2023-04-20 15:16:55.295 [INFO ] [e.automation.internal.RuleEngineImpl] - Rule engine started.

For the benefit of others, Consistent 100% CPU use of safeCall-queue thread - #12 by Andrew_Rowe covers the thread pool queue issue in more detail.

2 Likes

There are some posts above on this topic and generally attributed to a marketplace binding that does not have both OH3 and OH4 capability. I had this problem with the Sony binding when I tried 4M1. I had to revert back to OH3.4 and switched to the AndroidTV binding because it was advertised as OH4 “ok” and worked on my Sony. Surprisingly I had same problem today when upgrading back to 4M2. (I forgot the advice above to delete the marketplace bindings :frowning_face:) IMO I think the safest route is to delete all the marketplace bindings before upgrading because once you get the error on OH4 it is going to be harder. Then readd them once you are safely running on OH4.

I was able to recover today by removing everything except an {} in the jsondb file /var/lib/openhab/jsondb/org.openhab.marketplace.json then use karaf to restart the waiting (151) bundle. That got the marketplace going. On the Marketplace UI the AndroidTV binding was shown as installed (and working the whole time), I deleted and readded it. That repopulated the Jsondb file and everything is fine it seems (I haven’t restarted OH yet).

Don’t know if this will work for you

I get a message when I access openhab-cli console on 4.0M2 (upgraded today from 3.4.2).

Failed to load native library:jansi-2.4.0-33daa7c169760e92-libjansi.so. osinfo: Linux/arm
java.lang.UnsatisfiedLinkError: /var/lib/openhab/tmp/jansi-2.4.0-33daa7c169760e92-libjansi.so: /var/lib/openhab/tmp/jansi-2.4.0-33daa7c169760e92-libjansi.so: cannot open shared object file: No such file or directory

It happens right after I enter “habopen”

I think this is just a timing issue because everything works ok and I can see that the files referenced are created. They also go away neatly when the session is closed.

1 Like

After updating to OH4.0M2 I receive the following error messages:

2023-04-24 09:02:28.338 [WARN ] [core.thing.internal.ThingManagerImpl] - Channel types or config descriptions for thing 'avmfritz:FRITZ_DECT_200:bb78fd66:11630024xxxx' are missing in the respective registry for more than 120s. This should be fixed in the binding.
2023-04-24 09:02:28.367 [WARN ] [core.thing.internal.ThingManagerImpl] - Failed to normalize configuration for thing 'avmfritz:FRITZ_DECT_200:bb78fd66:11630024xxxx': {thing/channel=Type description for {0} not found although we checked the presence before.}
2023-04-24 09:02:28.381 [WARN ] [core.thing.internal.ThingManagerImpl] - Channel types or config descriptions for thing 'avmfritz:FRITZ_DECT_200:bb78fd66:08761005xxxx' are missing in the respective registry for more than 120s. This should be fixed in the binding.
2023-04-24 09:02:28.384 [WARN ] [core.thing.internal.ThingManagerImpl] - Failed to normalize configuration for thing 'avmfritz:FRITZ_DECT_200:bb78fd66:08761005xxxx': {thing/channel=Type description for {0} not found although we checked the presence before.}
2023-04-24 09:02:28.396 [WARN ] [core.thing.internal.ThingManagerImpl] - Channel types or config descriptions for thing 'avmfritz:FRITZ_DECT_210:bb78fd66:11657035xxxx' are missing in the respective registry for more than 120s. This should be fixed in the binding.
2023-04-24 09:02:28.398 [WARN ] [core.thing.internal.ThingManagerImpl] - Failed to normalize configuration for thing 'avmfritz:FRITZ_DECT_210:bb78fd66:11657035xxxx': {thing/channel=Type description for {0} not found although we checked the presence before.}
2023-04-24 09:02:28.409 [WARN ] [core.thing.internal.ThingManagerImpl] - Channel types or config descriptions for thing 'avmfritz:FRITZ_DECT_200:bb78fd66:11630022xxxx' are missing in the respective registry for more than 120s. This should be fixed in the binding.
2023-04-24 09:02:28.411 [WARN ] [core.thing.internal.ThingManagerImpl] - Failed to normalize configuration for thing 'avmfritz:FRITZ_DECT_200:bb78fd66:11630022xxxx': {thing/channel=Type description for {0} not found although we checked the presence before.}
2023-04-24 09:02:28.424 [WARN ] [core.thing.internal.ThingManagerImpl] - Channel types or config descriptions for thing 'avmfritz:FRITZ_DECT_200:bb78fd66:11630011xxxx' are missing in the respective registry for more than 120s. This should be fixed in the binding.
2023-04-24 09:02:28.426 [WARN ] [core.thing.internal.ThingManagerImpl] - Failed to normalize configuration for thing 'avmfritz:FRITZ_DECT_200:bb78fd66:11630011xxxx': {thing/channel=Type description for {0} not found although we checked the presence before.}
2023-04-24 09:02:28.437 [WARN ] [core.thing.internal.ThingManagerImpl] - Channel types or config descriptions for thing 'avmfritz:FRITZ_Powerline_546E:bb78fd66:34_31_C4_D4_XX_XX' are missing in the respective registry for more than 120s. This should be fixed in the binding.
2023-04-24 09:02:28.439 [WARN ] [core.thing.internal.ThingManagerImpl] - Failed to normalize configuration for thing 'avmfritz:FRITZ_Powerline_546E:bb78fd66:34_31_C4_D4_XX_XX': {thing/channel=Type description for {0} not found although we checked the presence before.}

Anyone knowing if this is addressed already?

I think it is known, but not yet fixed. Advice was to ignore for now.
openHAB 4.0 SNAPSHOT discussion - Setup, Configuration and Use / News & Important Changes - openHAB Community

Using AVM Dect devices, most of them type 200, in BasicUI some power values are shown, some not although identical defined:

Two outlets, one is active (green dot within the green circle) not showing any power consumption, although it should. The other one showing correctly a value of 0 W.

The item works correct as shown in the item definition panel:

I can’t find any error in the definition, and all worked fine on the last OH 3 release.

Now running on

openHAB 4.0.0.M2

Running today’s build, it’s not possible to setup myopenhab.org-access. The portal connects successfully and shows online, the openhab.log shows the same.

However, when trying to load the local instance over https://home.myopenhab.org or the android app, it fails after a long time. In the browser it’s showing 504 gateway timeout.

openhab.log reveils:

2023-04-28 12:26:30.296 [ERROR] [io.socket.thread.EventThread        ] - Task threw exception
java.lang.ClassCastException: class org.json.JSONObject cannot be cast to class org.json.JSONObject (org.json.JSONObject is in unnamed module of loader org.eclipse.osgi.internal.loader.EquinoxClassLoader @7127a6b2; org.json.JSONObject is in unnamed module of loader org.eclipse.osgi.internal.loader.EquinoxClassLoader @4e73eeb0)
        at org.openhab.io.openhabcloud.internal.CloudClient.lambda$15(CloudClient.java:358) ~[?:?]
        at io.socket.emitter.Emitter.emit(Emitter.java:117) ~[?:?]
        at io.socket.client.Socket.onevent(Socket.java:338) ~[?:?]
        at io.socket.client.Socket.onpacket(Socket.java:289) ~[?:?]
        at io.socket.client.Socket.access$100(Socket.java:24) ~[?:?]
        at io.socket.client.Socket$2$2.call(Socket.java:120) ~[?:?]
        at io.socket.emitter.Emitter.emit(Emitter.java:117) ~[?:?]
        at io.socket.client.Manager.ondecoded(Manager.java:431) ~[?:?]
        at io.socket.client.Manager.access$1600(Manager.java:30) ~[?:?]
        at io.socket.client.Manager$7.call(Manager.java:407) ~[?:?]
        at io.socket.parser.IOParser$Decoder.add(IOParser.java:105) ~[?:?]
        at io.socket.client.Manager.ondata(Manager.java:423) ~[?:?]
        at io.socket.client.Manager.access$1000(Manager.java:30) ~[?:?]
        at io.socket.client.Manager$2.call(Manager.java:374) ~[?:?]
        at io.socket.emitter.Emitter.emit(Emitter.java:117) ~[?:?]
        at io.socket.engineio.client.Socket.onPacket(Socket.java:551) ~[?:?]
        at io.socket.engineio.client.Socket.access$1000(Socket.java:36) ~[?:?]
        at io.socket.engineio.client.Socket$5.call(Socket.java:335) ~[?:?]
        at io.socket.emitter.Emitter.emit(Emitter.java:117) ~[?:?]
        at io.socket.engineio.client.Transport.onPacket(Transport.java:126) ~[?:?]
        at io.socket.engineio.client.Transport.onData(Transport.java:118) ~[?:?]
       at io.socket.engineio.client.transports.WebSocket.access$100(WebSocket.java:24) ~[?:?]
        at io.socket.engineio.client.transports.WebSocket$1$2.run(WebSocket.java:71) ~[?:?]
        at io.socket.thread.EventThread$2.run(EventThread.java:80) ~[?:?]
        at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) ~[?:?]
        at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) ~[?:?]
        at java.lang.Thread.run(Thread.java:833) ~[?:?]

Any ideas? Thanks :slight_smile:

Can you please post the output of list -s -t 0 | grep -i json? And do you have the ambientweather binding installed?

I’ve just updated to Openhab 4.0 M2 from Openhab 3.
But I can’t get the Samsung binding to work.

have a look at the last line of the logs …org.openhab.binding.samsungtv_3.3.0.202112301538…
was the binding installed correctly? Because the version is still 3.3.x

2023-04-30 13:45:53.230 [INFO ] [ab.event.ThingStatusInfoChangedEvent] - Thing 'samsungtv:tv:f88b2309-44ad-4e5c-b2c1-2d61a1260cbe' changed from UNINITIALIZED (HANDLER_INITIALIZING_ERROR): org/openhab/core/service/AbstractWatchService to UNINITIALIZED
2023-04-30 13:45:53.236 [INFO ] [ab.event.ThingStatusInfoChangedEvent] - Thing 'samsungtv:tv:f88b2309-44ad-4e5c-b2c1-2d61a1260cbe' changed from UNINITIALIZED to UNKNOWN
2023-04-30 13:45:53.240 [INFO ] [ab.event.ThingStatusInfoChangedEvent] - Thing 'samsungtv:tv:f88b2309-44ad-4e5c-b2c1-2d61a1260cbe' changed from UNKNOWN to UNINITIALIZED (DISABLED)
==> /var/log/openhab/openhab.log <==
2023-04-30 13:45:54.543 [DEBUG] [tv.internal.handler.SamsungTvHandler] - 192.168.188.24: Create a Samsung TV Handler for thing 'samsungtv:tv:f88b2309-44ad-4e5c-b2c1-2d61a1260cbe'
2023-04-30 13:45:54.552 [DEBUG] [tv.internal.handler.SamsungTvHandler] - 192.168.188.24: Initializing Samsung TV handler for uid 'samsungtv:tv:f88b2309-44ad-4e5c-b2c1-2d61a1260cbe'
2023-04-30 13:45:54.557 [DEBUG] [tv.internal.handler.SamsungTvHandler] - 192.168.188.24: Updated artModeSupported: false and PowerState: true
2023-04-30 13:45:54.558 [DEBUG] [tv.internal.handler.SamsungTvHandler] - 192.168.188.24: Check and create missing services
2023-04-30 13:45:54.559 [DEBUG] [nternal.service.MediaRendererService] - 192.168.188.24: Creating a Samsung TV MediaRenderer service
2023-04-30 13:45:54.559 [DEBUG] [tv.internal.handler.SamsungTvHandler] - 192.168.188.24: Started service for: QE65Q80TATXXH, MediaRenderer (f88b2309-44ad-4e5c-b2c1-2d61a1260cbe)
2023-04-30 13:45:54.559 [DEBUG] [rnal.service.RemoteControllerService] - 192.168.188.24: Creating a Samsung TV RemoteController service: is UPNP:false
2023-04-30 13:45:54.560 [ERROR] [nal.common.AbstractInvocationHandler] - An error occurred while calling method 'ThingHandler.initialize()' on 'org.openhab.binding.samsungtv.internal.handler.SamsungTvHandler@1e9b85': org/openhab/core/service/AbstractWatchService
java.lang.NoClassDefFoundError: org/openhab/core/service/AbstractWatchService
	at org.openhab.binding.samsungtv.internal.protocol.RemoteControllerWebSocket.<init>(RemoteControllerWebSocket.java:177) ~[?:?]
	at org.openhab.binding.samsungtv.internal.service.RemoteControllerService.<init>(RemoteControllerService.java:95) ~[?:?]
	at org.openhab.binding.samsungtv.internal.handler.SamsungTvHandler.createNewService(SamsungTvHandler.java:637) ~[?:?]
	at org.openhab.binding.samsungtv.internal.handler.SamsungTvHandler.createService(SamsungTvHandler.java:607) ~[?:?]
	at org.openhab.binding.samsungtv.internal.handler.SamsungTvHandler.checkAndCreateServices(SamsungTvHandler.java:575) ~[?:?]
	at org.openhab.binding.samsungtv.internal.handler.SamsungTvHandler.initialize(SamsungTvHandler.java:443) ~[?:?]
	at jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[?:?]
	at jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) ~[?:?]
	at jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[?:?]
	at java.lang.reflect.Method.invoke(Method.java:568) ~[?:?]
	at org.openhab.core.internal.common.AbstractInvocationHandler.invokeDirect(AbstractInvocationHandler.java:147) ~[?:?]
	at org.openhab.core.internal.common.Invocation.call(Invocation.java:52) ~[?:?]
	at java.util.concurrent.FutureTask.run(FutureTask.java:264) ~[?:?]
	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) ~[?:?]
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) ~[?:?]
	at java.lang.Thread.run(Thread.java:833) ~[?:?]
Caused by: java.lang.ClassNotFoundException: org.openhab.core.service.AbstractWatchService cannot be found by org.openhab.binding.samsungtv_3.3.0.202112301538

How did you install it? From the version it looks like a snapshot, maybe you installed it by dropping a file in the addons folder?

That aside: this version can’t run on OH4 because there is no AbstractWatchService in openHAB.

I installed it from the ui.

In the past I tried several Samsung Add-Ons from the Marketplac, maybe I’ve some kind of orphan here.

This is the installed Binding in the UI

And this is my current addon folder:

please show the output of list -s -u | grep -i samsung

I’ve just started again with my Backup of the openHAB 3.4.2 - Release Build.

I figured out, that I was using a beta version of the Samsung Binding from the marketplace:

Now I’ve removed the Samsung Binding Beta before upgrading to 4.0 M2.
After upgrading, I installed the Samsung Binding (not Beta, but the official) and now everthing concerning Samsung works.

But now I figured out, that the twinkly Binding from the Marketplace is vanished.

Hi all

I have one question regarding the removal of NashornJS, just to make sure I undestand it correctly.

I have several ECMA-2021 Edition 11 Scripts. (type: application/javascript;version=ECMAScript-2021)
For this scripts, do I have to switch the type to 5.1 and install the Nashorn Addon or should they run without issues after upgrade to OH4?

As part of the upgrade to OH 4 it should change the mime type accordingly. If not, you can manually change the type to application/javascript. It is now Nashorn that will have the non-standard mime type. I believe those should be application/javascript;version=ECMAScript-5.1 or something like that.