openHAB 2.5.7 release discussion

So where does that mention your issue ? It does not. It is just a very generic warning that there may be more problems than usual.

Serious ? You want to tell us that after years of usage, you still don’t know the difference between openHAB and openHABian ? Your issue is on openHABian hence it does not belong here.

No, but -Dgnu.io... is deprecated. Remove it and restart OH to see if that makes a difference.

Hi @Kim_Andersen , would you please so kind and move your discussion with @mstormi to a private one? It’s annoying here to read your entitlement of a bug-free openHAB, which is maintained with blood, sweat and tears from everyone in their free time.
Thanks.

6 Likes

I already removed -Dgnu.io ... but the warnings remain. I don’t know if it’s relevant, I’m still using Java 8.

done

2 Likes

After installing 2.5.7 (over 2.5.6) a few days back, I had to downgrade to 2.5.6.
On 2.5.7, the CPU load for the java process maxed out for 15-20s every minute or so, blocking everything until the CPU was released again.
I tried enabling DEBUG logging for karaf,core and all my bindings, but nothing showed up in the logs as the CPU was hogged.

My system runs Ubuntu Server 18.04 LTS

openhab> list -s | grep -i binding
136 │ Active   │  80 │ 2.5.0                   │ org.openhab.core.binding.xml
203 │ Active   │  80 │ 2.5.0.201907121940      │ org.openhab.binding.nanoleaf
239 │ Active   │  80 │ 2.5.6                   │ org.openhab.binding.astro
240 │ Active   │  80 │ 2.5.6                   │ org.openhab.binding.daikin
241 │ Active   │  80 │ 2.5.6                   │ org.openhab.binding.deconz
242 │ Active   │  80 │ 1.14.0                  │ org.openhab.binding.expire
243 │ Active   │  80 │ 2.5.6                   │ org.openhab.binding.harmonyhub
244 │ Active   │  80 │ 1.14.0                  │ org.openhab.binding.http
245 │ Active   │  80 │ 2.5.6                   │ org.openhab.binding.hue
246 │ Active   │  80 │ 2.5.6                   │ org.openhab.binding.kodi
247 │ Active   │  80 │ 2.5.6                   │ org.openhab.binding.mail
248 │ Active   │  80 │ 2.5.6                   │ org.openhab.binding.network
249 │ Active   │  80 │ 2.5.6                   │ org.openhab.binding.onkyo
250 │ Active   │  80 │ 2.5.6                   │ org.openhab.binding.samsungtv
251 │ Active   │  80 │ 2.5.6                   │ org.openhab.binding.shelly
252 │ Active   │  80 │ 2.5.6                   │ org.openhab.binding.squeezebox
253 │ Active   │  80 │ 2.5.6                   │ org.openhab.binding.systeminfo
254 │ Active   │  80 │ 2.5.6                   │ org.openhab.binding.tradfri
255 │ Active   │  80 │ 2.5.6                   │ org.openhab.binding.zwave
openhab> logout
Connection to localhost closed.
omr@shs2:~$ java -version
java version "1.8.0_201"
Java(TM) SE Runtime Environment (build 1.8.0_201-b09)
Java HotSpot(TM) 64-Bit Server VM (build 25.201-b09, mixed mode)
omr@shs2:~$ uname -a
Linux shs2 4.15.0-66-generic #75-Ubuntu SMP Tue Oct 1 05:24:09 UTC 2019 x86_64 x86_64 x86_64 GNU/Linux
omr@shs2:~$

Downgrading to 2.5.6, the CPU load for the java process is a stable 8-12%

Can someone guide me in my issues after the upgrade? Details below. I am running OH2 on RPI3 with Buster. I kinda got stuck on 2.5.4-1 as anything above I upgrade to (today tried 2.5.7-1) I’m getting loads of errors with items which I guess are coming from binding issues. Rollback to 2.5.4-1 (and cleaning cache) helps to stabilize, get the log file clear and proper Basic UI look.

Error I’m getting:

2020-08-11 09:34:10.226 [WARN ] [basic.internal.render.SwitchRenderer] - Cannot determine item type of 'kamera_dol' 2020-08-11 09:34:10.259 [ERROR] [ui.internal.items.ItemUIRegistryImpl] - Cannot retrieve item 'kamera_dol' for widget org.eclipse.smarthome.model.sitemap.sitemap.Switch 2020-08-11 09:34:10.261 [ERROR] [ui.internal.items.ItemUIRegistryImpl] - Cannot retrieve item for widget org.eclipse.smarthome.model.sitemap.sitemap.Switch 2020-08-11 09:34:10.264 [ERROR] [ui.internal.items.ItemUIRegistryImpl] - Cannot retrieve item 'kamera_dol' for widget org.eclipse.smarthome.model.sitemap.sitemap.Switch 2020-08-11 09:34:10.267 [ERROR] [ui.internal.items.ItemUIRegistryImpl] - Cannot retrieve item 'kamera_dol' for widget org.eclipse.smarthome.model.sitemap.sitemap.Switch 2020-08-11 09:34:10.269 [ERROR] [ui.internal.items.ItemUIRegistryImpl] - Cannot retrieve item 'kamera_dol' for widget org.eclipse.smarthome.model.sitemap.sitemap.Switch

item is defined as:
Switch kamera_dol <camera> { http=">[ON:GET:http://192.168.1.27/web/cgi-bin/hi3510/ytdown.cgi?{Authorization=Basic xxxxxxxxxxx=}]" }

Then
same error for item introduced by PanasonicTV binding:
Switch BedroomTVPower "Power" { panasonictv="tv_sypialnia:POWER" }

and then with no errors in the log (no debug), there are lots of issues with items which are filled in via mqtt (for weather station, alarm etc) - values are not present but also icons problems. I tried to restart the instance couple of time, clean the cache, I didn’t try to restart the whole server yet so maybe I’m asking for help too early. On the other hand this must be something straightforward.

Leave the cache alone after an upgrade. Let it populate and do its job, do an “extra” restart without touching it, see what issues are left.

@rossko57 I obviously tried that in the first place (let it do its job and 2 restarts), then when it didn’t work, I tried to remove cache an so on. I tried this with 2.5.5, 2.5.6, and today 2.5.7. This isn’t a conincidence

There’s no “obviously” about it, we only know what you tell us.

The “missing Items” reports you show us invariably arise when the cache has been cleared, and stop happening when the cache has been allowed to settle and openHAB restarted. Some report two attempts needed at that, maybe it is configuration dependent.

It’s not quite impossible for some part of validation to have changed, so that an xxx.items file that worked under earlier versions now no longer loads. You would get a message about that in your openhab.log but you say there are no errors.

None of the problems you have shown us are directly to do with bindings. Let’s clear these Item related problems, and move on to the next.

After an upgrade did you try to resave your items file to have it read in again?

@Thedannymullen no I didn’t try it. It is a good idea to give it a try. Thanks

1 Like

Today I tried to upgrade again, then before I started OH2 again, I rebooted the server and when it came up it was already clean and no issues with items. Defintiely RPI reboot helped and I regret I didn’t try it before raising this issue but on the other hand it was never required before. Thanks to all who spent time and looked at my case and answered with ideas! This is very much appreciated. I will keep observing 2.7.1 now and see if any issues

2 Likes

I haven’t seen the same error message in the logs but I found my z-wave controller stopped working so all my devices aren’t initialized. Did you get it working again?

My Z-wave controller and my enocean Controller worked well. I have no problems, only the warning messages in the log.
And I have no idea where they came from.

1 Like

@mstormi

I am running openhab natively in Ubuntu 18.04 and since upgrading to 2.5.7 i am seeing out of memory errors pop up after a random amount of time running.

How do you change the memory setting?

Start java with increased -Xmx parameters (-Xms, too, eventually)

If it´s some binding or ervices which doesnt free the memory as it should, then it wont change anything increasing the Xmx and Xms parameters. Thats my experience though.

@Kim_Andersen what debugging steps should i look into to see what binding is causing the problem.

I will add that while things were stable with 2.5.6 for me i did have an issue with the MQTT bundle where i had to reset it every so often. If i remember correctly i think there was an underlying issue with a library. But that would only shut down the MQTT bundle and its devices would stop working. I could reset the bundle and openhab would become responsive again.

Now when it happens openhab locks up completely and you can’t even access the openhba-cli console.

I have looked at my logs but they don’t appear to be helpful, i don’t see a binding mentioned in the error message

2020-08-18 19:55:38.415 [ERROR] [ersey.server.ServerRuntime$Responder] - An I/O error has occurred while writing a response message entity to the container output stream.
java.lang.OutOfMemoryError: null
	at sun.reflect.GeneratedConstructorAccessor765.newInstance(Unknown Source) ~[?:?]
	at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45) ~[?:1.8.0_262]
	at java.lang.reflect.Constructor.newInstance(Constructor.java:423) ~[?:1.8.0_262]
	at java.util.concurrent.ForkJoinTask.getThrowableException(ForkJoinTask.java:598) ~[?:1.8.0_262]
	at java.util.concurrent.ForkJoinTask.reportException(ForkJoinTask.java:677) ~[?:1.8.0_262]
	at java.util.concurrent.ForkJoinTask.invoke(ForkJoinTask.java:735) ~[?:1.8.0_262]
	at java.util.stream.ReduceOps$ReduceOp.evaluateParallel(ReduceOps.java:714) ~[?:1.8.0_262]
	at java.util.stream.AbstractPipeline.evaluate(AbstractPipeline.java:233) ~[?:1.8.0_262]
	at java.util.stream.ReferencePipeline.collect(ReferencePipeline.java:566) ~[?:1.8.0_262]
	at org.eclipse.smarthome.core.thing.link.ItemChannelLinkRegistry.getBoundChannels(ItemChannelLinkRegistry.java:67) ~[?:?]
	at org.eclipse.smarthome.core.thing.internal.ChannelStateDescriptionProvider.getStateDescription(ChannelStateDescriptionProvider.java:94) ~[?:?]
	at org.eclipse.smarthome.core.thing.internal.ChannelStateDescriptionProvider.getStateDescriptionFragment(ChannelStateDescriptionProvider.java:86) ~[?:?]
	at org.eclipse.smarthome.core.internal.service.StateDescriptionServiceImpl.mergeStateDescriptionFragments(StateDescriptionServiceImpl.java:103) ~[?:?]
	at org.eclipse.smarthome.core.internal.service.StateDescriptionServiceImpl.getStateDescription(StateDescriptionServiceImpl.java:89) ~[?:?]
	at org.eclipse.smarthome.core.items.GenericItem.getStateDescription(GenericItem.java:409) ~[?:?]
	at org.eclipse.smarthome.io.rest.core.item.EnrichedItemDTOMapper.considerTransformation(EnrichedItemDTOMapper.java:119) ~[?:?]
	at org.eclipse.smarthome.io.rest.core.item.EnrichedItemDTOMapper.map(EnrichedItemDTOMapper.java:67) ~[?:?]
	at org.eclipse.smarthome.io.rest.core.item.EnrichedItemDTOMapper.map(EnrichedItemDTOMapper.java:61) ~[?:?]
	at org.eclipse.smarthome.io.rest.core.internal.item.ItemResource.lambda$0(ItemResource.java:230) ~[?:?]
	at java.util.stream.ReferencePipeline$3$1.accept(ReferencePipeline.java:193) ~[?:1.8.0_262]
	at java.util.HashMap$KeySpliterator.tryAdvance(HashMap.java:1577) ~[?:1.8.0_262]
	at java.util.stream.StreamSpliterators$WrappingSpliterator.lambda$initPartialTraversalState$0(StreamSpliterators.java:295) ~[?:1.8.0_262]
	at java.util.stream.StreamSpliterators$AbstractWrappingSpliterator.fillBuffer(StreamSpliterators.java:207) ~[?:1.8.0_262]
	at java.util.stream.StreamSpliterators$AbstractWrappingSpliterator.doAdvance(StreamSpliterators.java:170) ~[?:1.8.0_262]
	at java.util.stream.StreamSpliterators$WrappingSpliterator.tryAdvance(StreamSpliterators.java:301) ~[?:1.8.0_262]
	at java.util.Spliterators$1Adapter.hasNext(Spliterators.java:681) ~[?:1.8.0_262]
	at org.eclipse.smarthome.io.rest.Stream2JSONInputStream.fillBuffer(Stream2JSONInputStream.java:93) ~[?:?]
	at org.eclipse.smarthome.io.rest.Stream2JSONInputStream.read(Stream2JSONInputStream.java:69) ~[?:?]
	at java.io.InputStream.read(InputStream.java:179) ~[?:1.8.0_262]
	at java.io.InputStream.read(InputStream.java:101) ~[?:1.8.0_262]
	at org.glassfish.jersey.message.internal.ReaderWriter.writeTo(ReaderWriter.java:115) ~[bundleFile:?]
	at org.glassfish.jersey.message.internal.AbstractMessageReaderWriterProvider.writeTo(AbstractMessageReaderWriterProvider.java:79) ~[bundleFile:?]
	at org.glassfish.jersey.message.internal.InputStreamProvider.writeTo(InputStreamProvider.java:105) ~[bundleFile:?]
	at org.glassfish.jersey.message.internal.InputStreamProvider.writeTo(InputStreamProvider.java:60) ~[bundleFile:?]
	at org.glassfish.jersey.message.internal.WriterInterceptorExecutor$TerminalWriterInterceptor.invokeWriteTo(WriterInterceptorExecutor.java:265) ~[bundleFile:?]
	at org.glassfish.jersey.message.internal.WriterInterceptorExecutor$TerminalWriterInterceptor.aroundWriteTo(WriterInterceptorExecutor.java:250) ~[bundleFile:?]
	at org.glassfish.jersey.message.internal.WriterInterceptorExecutor.proceed(WriterInterceptorExecutor.java:162) ~[bundleFile:?]
	at org.glassfish.jersey.server.internal.JsonWithPaddingInterceptor.aroundWriteTo(JsonWithPaddingInterceptor.java:106) ~[?:?]
	at org.glassfish.jersey.message.internal.WriterInterceptorExecutor.proceed(WriterInterceptorExecutor.java:162) ~[bundleFile:?]
	at org.glassfish.jersey.server.internal.MappableExceptionWrapperInterceptor.aroundWriteTo(MappableExceptionWrapperInterceptor.java:86) ~[?:?]
	at org.glassfish.jersey.message.internal.WriterInterceptorExecutor.proceed(WriterInterceptorExecutor.java:162) ~[bundleFile:?]
	at org.glassfish.jersey.message.internal.MessageBodyFactory.writeTo(MessageBodyFactory.java:1130) ~[bundleFile:?]
	at org.glassfish.jersey.server.ServerRuntime$Responder.writeResponse(ServerRuntime.java:711) [bundleFile:?]
	at org.glassfish.jersey.server.ServerRuntime$Responder.processResponse(ServerRuntime.java:444) [bundleFile:?]
	at org.glassfish.jersey.server.ServerRuntime$Responder.process(ServerRuntime.java:434) [bundleFile:?]
	at org.glassfish.jersey.server.ServerRuntime$2.run(ServerRuntime.java:329) [bundleFile:?]
	at org.glassfish.jersey.internal.Errors$1.call(Errors.java:271) [bundleFile:?]
	at org.glassfish.jersey.internal.Errors$1.call(Errors.java:267) [bundleFile:?]
	at org.glassfish.jersey.internal.Errors.process(Errors.java:315) [bundleFile:?]
	at org.glassfish.jersey.internal.Errors.process(Errors.java:297) [bundleFile:?]
	at org.glassfish.jersey.internal.Errors.process(Errors.java:267) [bundleFile:?]
	at org.glassfish.jersey.process.internal.RequestScope.runInScope(RequestScope.java:317) [bundleFile:?]
	at org.glassfish.jersey.server.ServerRuntime.process(ServerRuntime.java:305) [bundleFile:?]
	at org.glassfish.jersey.server.ApplicationHandler.handle(ApplicationHandler.java:1154) [bundleFile:?]
	at org.glassfish.jersey.servlet.WebComponent.serviceImpl(WebComponent.java:473) [bundleFile:?]
	at org.glassfish.jersey.servlet.WebComponent.service(WebComponent.java:427) [bundleFile:?]
	at org.glassfish.jersey.servlet.ServletContainer.service(ServletContainer.java:388) [bundleFile:?]
	at org.glassfish.jersey.servlet.ServletContainer.service(ServletContainer.java:341) [bundleFile:?]
	at org.glassfish.jersey.servlet.ServletContainer.service(ServletContainer.java:228) [bundleFile:?]
	at com.eclipsesource.jaxrs.publisher.internal.ServletContainerBridge.service(ServletContainerBridge.java:76) [bundleFile:?]
	at org.eclipse.jetty.servlet.ServletHolder.handle(ServletHolder.java:852) [bundleFile:9.4.20.v20190813]
	at org.eclipse.jetty.servlet.ServletHandler.doHandle(ServletHandler.java:544) [bundleFile:9.4.20.v20190813]
	at org.ops4j.pax.web.service.jetty.internal.HttpServiceServletHandler.doHandle(HttpServiceServletHandler.java:71) [bundleFile:?]
	at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:143) [bundleFile:9.4.20.v20190813]
	at org.eclipse.jetty.security.SecurityHandler.handle(SecurityHandler.java:536) [bundleFile:9.4.20.v20190813]
	at org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:127) [bundleFile:9.4.20.v20190813]
	at org.eclipse.jetty.server.handler.ScopedHandler.nextHandle(ScopedHandler.java:235) [bundleFile:9.4.20.v20190813]
	at org.eclipse.jetty.server.session.SessionHandler.doHandle(SessionHandler.java:1581) [bundleFile:9.4.20.v20190813]
	at org.eclipse.jetty.server.handler.ScopedHandler.nextHandle(ScopedHandler.java:233) [bundleFile:9.4.20.v20190813]
	at org.eclipse.jetty.server.handler.ContextHandler.doHandle(ContextHandler.java:1307) [bundleFile:9.4.20.v20190813]
	at org.ops4j.pax.web.service.jetty.internal.HttpServiceContext.doHandle(HttpServiceContext.java:293) [bundleFile:?]
	at org.eclipse.jetty.server.handler.ScopedHandler.nextScope(ScopedHandler.java:188) [bundleFile:9.4.20.v20190813]
	at org.eclipse.jetty.servlet.ServletHandler.doScope(ServletHandler.java:482) [bundleFile:9.4.20.v20190813]
	at org.eclipse.jetty.server.session.SessionHandler.doScope(SessionHandler.java:1549) [bundleFile:9.4.20.v20190813]
	at org.eclipse.jetty.server.handler.ScopedHandler.nextScope(ScopedHandler.java:186) [bundleFile:9.4.20.v20190813]
	at org.eclipse.jetty.server.handler.ContextHandler.doScope(ContextHandler.java:1204) [bundleFile:9.4.20.v20190813]
	at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:141) [bundleFile:9.4.20.v20190813]
	at org.ops4j.pax.web.service.jetty.internal.JettyServerHandlerCollection.handle(JettyServerHandlerCollection.java:80) [bundleFile:?]
	at org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:127) [bundleFile:9.4.20.v20190813]
	at org.eclipse.jetty.server.Server.handle(Server.java:494) [bundleFile:9.4.20.v20190813]
	at org.eclipse.jetty.server.HttpChannel.handle(HttpChannel.java:374) [bundleFile:9.4.20.v20190813]
	at org.eclipse.jetty.server.HttpConnection.onFillable(HttpConnection.java:268) [bundleFile:9.4.20.v20190813]
	at org.eclipse.jetty.io.AbstractConnection$ReadCallback.succeeded(AbstractConnection.java:311) [bundleFile:9.4.20.v20190813]
	at org.eclipse.jetty.io.FillInterest.fillable(FillInterest.java:103) [bundleFile:9.4.20.v20190813]
	at org.eclipse.jetty.io.ChannelEndPoint$2.run(ChannelEndPoint.java:117) [bundleFile:9.4.20.v20190813]
	at org.eclipse.jetty.util.thread.strategy.EatWhatYouKill.runTask(EatWhatYouKill.java:336) [bundleFile:9.4.20.v20190813]
	at org.eclipse.jetty.util.thread.strategy.EatWhatYouKill.doProduce(EatWhatYouKill.java:313) [bundleFile:9.4.20.v20190813]
	at org.eclipse.jetty.util.thread.strategy.EatWhatYouKill.tryProduce(EatWhatYouKill.java:171) [bundleFile:9.4.20.v20190813]
	at org.eclipse.jetty.util.thread.strategy.EatWhatYouKill.run(EatWhatYouKill.java:129) [bundleFile:9.4.20.v20190813]
	at org.eclipse.jetty.util.thread.ReservedThreadExecutor$ReservedThread.run(ReservedThreadExecutor.java:367) [bundleFile:9.4.20.v20190813]
	at org.eclipse.jetty.util.thread.QueuedThreadPool.runJob(QueuedThreadPool.java:782) [bundleFile:9.4.20.v20190813]
	at org.eclipse.jetty.util.thread.QueuedThreadPool$Runner.run(QueuedThreadPool.java:918) [bundleFile:9.4.20.v20190813]
	at java.lang.Thread.run(Thread.java:748) [?:1.8.0_262]
Caused by: java.lang.OutOfMemoryError: unable to create new native thread
	at java.lang.Thread.start0(Native Method) ~[?:1.8.0_262]
	at java.lang.Thread.start(Thread.java:717) ~[?:1.8.0_262]
	at java.util.concurrent.ForkJoinPool.createWorker(ForkJoinPool.java:1486) ~[?:1.8.0_262]
	at java.util.concurrent.ForkJoinPool.tryAddWorker(ForkJoinPool.java:1517) ~[?:1.8.0_262]
	at java.util.concurrent.ForkJoinPool.signalWork(ForkJoinPool.java:1634) ~[?:1.8.0_262]
	at java.util.concurrent.ForkJoinPool$WorkQueue.push(ForkJoinPool.java:868) ~[?:1.8.0_262]
	at java.util.concurrent.ForkJoinTask.fork(ForkJoinTask.java:700) ~[?:1.8.0_262]
	at java.util.stream.AbstractTask.compute(AbstractTask.java:324) ~[?:1.8.0_262]
	at java.util.concurrent.CountedCompleter.exec(CountedCompleter.java:731) ~[?:1.8.0_262]
	at java.util.concurrent.ForkJoinTask.doExec(ForkJoinTask.java:289) ~[?:1.8.0_262]
	at java.util.concurrent.ForkJoinPool$WorkQueue.runTask(ForkJoinPool.java:1056) ~[?:1.8.0_262]
	at java.util.concurrent.ForkJoinPool.runWorker(ForkJoinPool.java:1692) ~[?:1.8.0_262]
	at java.util.concurrent.ForkJoinWorkerThread.run(ForkJoinWorkerThread.java:171) ~[?:1.8.0_262]