openHAB 3.2 Release discussion

Hi there - Thanks for the great work on this release. Most of my integrations have come back to life and are looking good, with the exception of the CBUS binding, which is throwing an exception on startup.

See the discussion at C-Bus binding for more details, however the title does not link it to the 3.2.0 upgrade, as the user was trying to setup cbus integration for the first time since installing 3.2.0, so it would not have been obvious that it was a regression.

I have raised the following bug ticket for this:

Looking at the changes in the binding for 3.2.0, there are no material changes applied other than the “spotless” & “crowdin” changes applied across all the bindings, so hard to imagine it is anything to do with those, so perhaps more an underlying change in the OpenHAB framework causing the regression? (disclaimer: I’m not a java programmer, so don’t take the above observation as a statement of fact :slight_smile: )

FYI @jpharvey

Cheers

Thanks for reporting the bug. I spotted this a few weeks ago and have a fix. I just havent found time to create the pull request for it. Let me try to get that done in the next couple of days. If not it might need to wait until Christmas.
It was a change in an underlying class of Openhab that caused it, not a change in the binding.

1 Like

Thank you so much, I upgraded a couple of days ago, and although I am ok with programming rules, blockly is just so easy and fast.
This release really feels like openhab matured a great bit.
Just two minor things:
In the logs, I often get a penhab.event.ItemStateChangedEvent or even hab.event.ItemStateChangedEvent. This is not always the case and is not really a problem, but just wanted to tell you about it.
Also it would be great if the item state suggestions I can put behind an MQTT item would show up everywhere I interact with the item, for example blockly.

Thanks, had the same bug, updating from the last milestone using openhabian upgrade.

I agree. I’ve tried OH a few times before and never felt comfortable and when I came across issues they always seemed to be known and awaiting a fix in a future version so I reverted to HA This seems very solid.

Well done to all those involved in 3.2

2 Likes

After updating to 3.2 I see my MainUI on a wall mounted display (iOS) not reacting to button presses anymore after a couple of hours and the button does not reflect the actual state anymore. However, a press on the three dots to open an expandable card still works.
THIS problem did not appear with 3.1 Milestone releases.

Error log:

2021-12-23 19:24:27.893 [ERROR] [rg.apache.cxf.jaxrs.utils.JAXRSUtils] - No message body reader has been found for class java.lang.String, ContentType: application/octet-stream
2021-12-23 19:24:27.918 [WARN ] [s.impl.WebApplicationExceptionMapper] - javax.ws.rs.WebApplicationException: HTTP 415 Unsupported Media Type
	at org.apache.cxf.jaxrs.utils.JAXRSUtils.readFromMessageBody(JAXRSUtils.java:1473)
	at org.apache.cxf.jaxrs.utils.JAXRSUtils.processRequestBodyParameter(JAXRSUtils.java:950)
	at org.apache.cxf.jaxrs.utils.JAXRSUtils.processParameters(JAXRSUtils.java:881)
	at org.apache.cxf.jaxrs.interceptor.JAXRSInInterceptor.processRequest(JAXRSInInterceptor.java:215)
	at org.apache.cxf.jaxrs.interceptor.JAXRSInInterceptor.handleMessage(JAXRSInInterceptor.java:79)
	at org.apache.cxf.phase.PhaseInterceptorChain.doIntercept(PhaseInterceptorChain.java:308)
	at org.apache.cxf.transport.ChainInitiationObserver.onMessage(ChainInitiationObserver.java:121)
	at org.apache.cxf.transport.http.AbstractHTTPDestination.invoke(AbstractHTTPDestination.java:265)
	at org.apache.cxf.transport.servlet.ServletController.invokeDestination(ServletController.java:234)
	at org.apache.cxf.transport.servlet.ServletController.invoke(ServletController.java:208)
	at org.apache.cxf.transport.servlet.ServletController.invoke(ServletController.java:160)
	at org.apache.cxf.transport.servlet.CXFNonSpringServlet.invoke(CXFNonSpringServlet.java:225)
	at org.apache.cxf.transport.servlet.AbstractHTTPServlet.handleRequest(AbstractHTTPServlet.java:298)
	at org.apache.cxf.transport.servlet.AbstractHTTPServlet.doPost(AbstractHTTPServlet.java:217)
	at javax.servlet.http.HttpServlet.service(HttpServlet.java:707)
	at org.apache.cxf.transport.servlet.AbstractHTTPServlet.service(AbstractHTTPServlet.java:273)
	at org.eclipse.jetty.servlet.ServletHolder.handle(ServletHolder.java:799)
	at org.eclipse.jetty.servlet.ServletHandler.doHandle(ServletHandler.java:550)
	at org.ops4j.pax.web.service.jetty.internal.HttpServiceServletHandler.doHandle(HttpServiceServletHandler.java:71)
	at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:143)
	at org.eclipse.jetty.security.SecurityHandler.handle(SecurityHandler.java:602)
	at org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:127)
	at org.eclipse.jetty.server.handler.ScopedHandler.nextHandle(ScopedHandler.java:235)
	at org.eclipse.jetty.server.session.SessionHandler.doHandle(SessionHandler.java:1624)
	at org.eclipse.jetty.server.handler.ScopedHandler.nextHandle(ScopedHandler.java:233)
	at org.eclipse.jetty.server.handler.ContextHandler.doHandle(ContextHandler.java:1434)
	at org.ops4j.pax.web.service.jetty.internal.HttpServiceContext.doHandle(HttpServiceContext.java:294)
	at org.eclipse.jetty.server.handler.ScopedHandler.nextScope(ScopedHandler.java:188)
	at org.eclipse.jetty.servlet.ServletHandler.doScope(ServletHandler.java:501)
	at org.eclipse.jetty.server.session.SessionHandler.doScope(SessionHandler.java:1594)
	at org.eclipse.jetty.server.handler.ScopedHandler.nextScope(ScopedHandler.java:186)
	at org.eclipse.jetty.server.handler.ContextHandler.doScope(ContextHandler.java:1349)
	at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:141)
	at org.ops4j.pax.web.service.jetty.internal.JettyServerHandlerCollection.handle(JettyServerHandlerCollection.java:82)
	at org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:127)
	at org.eclipse.jetty.server.Server.handle(Server.java:516)
	at org.eclipse.jetty.server.HttpChannel.lambda$handle$1(HttpChannel.java:388)
	at org.eclipse.jetty.server.HttpChannel.dispatch(HttpChannel.java:633)
	at org.eclipse.jetty.server.HttpChannel.handle(HttpChannel.java:380)
	at org.eclipse.jetty.server.HttpConnection.onFillable(HttpConnection.java:277)
	at org.eclipse.jetty.io.AbstractConnection$ReadCallback.succeeded(AbstractConnection.java:311)
	at org.eclipse.jetty.io.FillInterest.fillable(FillInterest.java:105)
	at org.eclipse.jetty.io.ChannelEndPoint$1.run(ChannelEndPoint.java:104)
	at org.eclipse.jetty.util.thread.strategy.EatWhatYouKill.runTask(EatWhatYouKill.java:338)
	at org.eclipse.jetty.util.thread.strategy.EatWhatYouKill.doProduce(EatWhatYouKill.java:315)
	at org.eclipse.jetty.util.thread.strategy.EatWhatYouKill.tryProduce(EatWhatYouKill.java:173)
	at org.eclipse.jetty.util.thread.strategy.EatWhatYouKill.run(EatWhatYouKill.java:131)
	at org.eclipse.jetty.util.thread.ReservedThreadExecutor$ReservedThread.run(ReservedThreadExecutor.java:386)
	at org.eclipse.jetty.util.thread.QueuedThreadPool.runJob(QueuedThreadPool.java:883)
	at org.eclipse.jetty.util.thread.QueuedThreadPool$Runner.run(QueuedThreadPool.java:1034)
	at java.base/java.lang.Thread.run(Thread.java:829)

I just successfully upgraded from 3.1 to 3.2. No hiccup at all. And I was able to remove the MyQ jar file in the add-ons folder now that it’s part of the 3.2 distribution. Love the new binding UI. Thanks all and happy holidays!

2 Likes

A post was split to a new topic: Error message during 3.2 start-up

3 posts were split to a new topic: InfluxDB persistence configuration

12 posts were split to a new topic: OpenJDK and Zulu in openHABian

I use Zulu 11 OpenJDK. It was installed via openhabian.

In the meantime I’ve set up a fresh openhabian install. Unfortunately, the problem (see Error message during start-up after updating from 3.1.1 to 3.2: [core.karaf.internal.FeatureInstaller] - Failed installing add-ons) persits when I restore my configuration.

A post was split to a new topic: Failed to install MQTT binding

Not quite, it is to eventually discuss identified and confirmed issues with the software that were introduced in 3.2. This thread is to quickly get maintainers an overview of what’s eventually bad in most recent changes, strictly speaking that would be changes between the last milestone i.e. 3.2M5, and the final 3.2 release.
Getting that overview will not work if we discuss any 3.2 related issue here so my request regarding discussion on the milestone applies here likewise and I will keep splitting if necessary.

2 Likes

Since update from 3.1.1 to 3.2 rrd4j items with COUNTER in services/rrd4j.cfg seems not to work anymore. The values included in database are all zero. Has there something been changed? I only could find that rrd4j was updated to a newer version.

ctr24h.def=COUNTER,900,0,U,60
ctr24h.archives=AVERAGE,0.5,1,480:AVERAGE,0.5,10,144
ctr24h.items=Item1,Item2

4 posts were split to a new topic: Unsupported HTTP Media Type after upgrade to 3.2

No issues upgrading to 3.2 from 3.1 via apt on Ubuntu 20.04.

I only use a small number of bindings. Current details below:

runtimeInfo:
  version: 3.2.0
  buildString: Release Build
locale: en-GB
systemInfo:
  configFolder: /etc/openhab
  userdataFolder: /var/lib/openhab
  logFolder: /var/log/openhab
  javaVersion: 11.0.13
  javaVendor: Azul Systems, Inc.
  javaVendorVersion: Zulu11.52+13-CA
  osName: Linux
  osVersion: 5.11.22-5-pve
  osArchitecture: amd64
  availableProcessors: 2
  freeMemory: 111027184
  totalMemory: 299892736
bindings:
  - astro
  - gpstracker
  - http
  - mqtt
  - network

Well done to everyone involved, and Merry Christmas!

I have just made my second attempt to update from 3.1.1-1 to 3.2, after a first attempt on 23/12.
For the second time it just blew up my OH system, flooding the log with errors (generating some 40MB or errors in the log in less than a minute), forcing me to restore the previous version.

Prior to posting here I did read this thread and a couple of issues mentioned here applied to me.

  • I did encounter the karaf error about failing to install add-ones (see below), but had been under the impression that the underlying issue for that had been fixed in the meantime; or, at least, from this discussion, that this was not a fundamental issue preventing the proper functioning of the system.
2021-12-28 13:34:23.538 [ERROR] [core.karaf.internal.FeatureInstaller] - Failed installing 'openhab-binding-tr064, openhab-persistence-mapdb, openhab-binding-senechome, openhab-misc-openhabcloud, openhab-binding-avmfritz, openhab-binding-network, openhab-persistence-influxdb, openhab-ui-habpanel, openhab-automation-jsscripting, openhab-binding-shelly, openhab-binding-nuki, openhab-binding-mqtt, openhab-transformation-map, openhab-binding-ipcamera, openhab-binding-homematic, openhab-binding-systeminfo, openhab-binding-mail, openhab-persistence-jdbc-mariadb, openhab-transformation-javascript, openhab-binding-sonos, openhab-transformation-regex, openhab-transformation-jsonpath, openhab-ui-basic, openhab-binding-http, openhab-binding-astro': null

  • I also saw a mention of the System Info binding causing issues, so I uninstalled that prior to upgrading the second time.
  • Also noticed a mentioned issue with Influxdb, but that sounded like it only applied to fresh installs where existing data gets copied in.
    Hence asking whether anyone can make sense of the issues I am facing:

Here’s what I do / observe in my case (without really noticing any difference between first and second upgrade attempts):

  • upgrade to 3.2 via apt full-upgrade
  • in the logs I see the system restarting, loading all models and items
  • I also start seeing some output from rules running at system start which post a number of default values to related number items (which are not connected to any bindings)
  • then I start getting quite few error messages saying that transformation services MAP and JS are not available (plus all the states to be transformed are NULL) → suggesting that the bindings are not working at this stage?
2021-12-28 13:33:25.780 [WARN ] [rest.core.item.EnrichedItemDTOMapper] - Failed transforming the state 'NULL' on item 'FboxKurtpresent' with pattern 'MAP(presence.map):%s': Couldn't transform value because transformation service of type 'MAP' is not available.
2021-12-28 13:33:25.879 [WARN ] [rest.core.item.EnrichedItemDTOMapper] - Failed transforming the state 'NULL' on item 'SonosWohnzimmerStecker19216817828DeviceUptime' with pattern 'JS(secstotimeshort.js):%s': Couldn't transform value because transformation service of type 'JS' is not available.
  • then I have many rules and also scheduled jobs failing, again because of the NULLs
  • also warning that no queryable persistance service influxdb (which is my default service)
2021-12-28 13:33:28.099 [WARN ] [nce.extensions.PersistenceExtensions] - There is no queryable persistence service registered with the id 'influxdb'

  • then the above-mentioned karaf error of failed installing bindings
  • after that OH restarts, starts loading items and rules again
  • and then all hell breaks lose, with lots of “Error executing EValidator” or “resolution of uriFragment failed” errors on all the rules; and each of those errors fills 1-2k lines in the logs, hence quickly blowing up the logs. (See start of the first EValidator error message and start of first “resolution of uriFragment” errors below).
2021-12-28 13:35:04.274 [INFO ] [el.core.internal.ModelRepositoryImpl] - Loading model 'allother.rules'
2021-12-28 13:35:06.076 [ERROR] [xtext.validation.CompositeEValidator] - Error executing EValidator
java.lang.UnsupportedOperationException: Missing type computation for expression type: QuantityLiteral / ExpressionTypeComputationState: ExpressionAwareStackedResolvedTypes: [
  parent: [
    parent: [
      parent: [
        types:
          JvmOperation: Tmp_allotherRules._Elternbad Temperatur() (visibility: PUBLIC, simpleName: _Elternbad Temperatur, identifier: Tmp_allotherRules._Elternbad Temperatur(), deprecated: <unset>) (varArgs: false) (static: true, final: false, abstract: false, synchronized: false, default: false, native: false, strictFloatingPoint: false) -> void
        declaredTypeParameters:
          
        parent: [
          types:
            JvmField: Tmp_allotherRules.counter (visibility: PRIVATE, simpleName: counter, identifier: Tmp_allotherRules.counter, deprecated: <unset>) (static: true, final: false, volatile: false, transient: false, constant: <unset>, constantValue: null) -> Number
            JvmField: Tmp_allotherRules.draussenkaelter (visibility: PRIVATE, simpleName: draussenkaelter, identifier: Tmp_allotherRules.draussenkaelter, deprecated: <unset>) (static: true, final: false, volatile: false, transient: false, constant: <unset>, constantValue: null) -> boolean
            JvmField: Tmp_allotherRules.ElternbadKalt (visibility: PRIVATE, simpleName: ElternbadKalt, identifier: Tmp_allotherRules.ElternbadKalt, deprecated: <unset>) (static: true, final: false, volatile: false, transient: false, constant: <unset>, constantValue: null) -> boolean
            JvmField: Tmp_allotherRules.KinderbadKalt (visibility: PRIVATE, simpleName: KinderbadKalt, identifier: Tmp_allotherRules.KinderbadKalt, deprecated: <unset>) (static: true, final: false, volatile: false, transient: false, constant: <unset>, constantValue: null) -> boolean
            JvmField: Tmp_allotherRules.STOP (visibility: PRIVATE, simpleName: STOP, identifier: Tmp_allotherRules.STOP, deprecated: <unset>) (static: true, final: false, volatile: false, transient: false, constant: <unset>, constantValue: null) -> StopMoveType
            JvmField: Tmp_allotherRules.PLAY (visibility: PRIVATE, simpleName: PLAY, identifier: Tmp_allotherRules.PLAY, deprecated: <unset>) (static: true, final: false, volatile: false, transient: false, constant: <unset>, constantValue: null) -> PlayPauseType
[...]
2021-12-28 13:35:20.794 [ERROR] [xbase.resource.BatchLinkableResource] - resolution of uriFragment '|::0.2.0.2.0.0.7.0::0::/1' failed.
java.lang.UnsupportedOperationException: Missing type computation for expression type: QuantityLiteral / ExpressionTypeComputationState: ExpressionAwareStackedResolvedTypes: [
  parent: [
    parent: [
      parent: [
        types:
          JvmOperation: Tmp_allotherRules._Elternbad Temperatur() (visibility: PUBLIC, simpleName: _Elternbad Temperatur, identifier: Tmp_allotherRules._Elternbad Temperatur(), deprecated: <unset>) (varArgs: false) (static: true, final: false, abstract: false, synchronized: false, default: false, native: false, strictFloatingPoint: false) -> void
        declaredTypeParameters:
          
        parent: [
          types:
            JvmField: Tmp_allotherRules.counter (visibility: PRIVATE, simpleName: counter, identifier: Tmp_allotherRules.counter, deprecated: <unset>) (static: true, final: false, volatile: false, transient: false, constant: <unset>, constantValue: null) -> Number

If anyone had any ideas what might be causing this, it would be greatly appreciated!

I recommend to update through openhabian-config menu as the scripts perform some pre-update tasks.
But I do not know of that is the root of your problem.

1 Like

2 posts were split to a new topic: Icons do not load

2 posts were split to a new topic: Zwave ERROR HANDLER message after upgrade