openHAB 3.3 Release discussion

I just upgraded to 3.3 from 3.2 on my RPi 3B. Everything seems to work fine.

Thx devs!

Thanks for 3.3 of OH. Iā€™m very happy about it. Iā€™ve seen an issue with things or items which name starts with an number for example:

3lightsGarden

it could not be added and my existing links are missing.

From the docs:

Names must not begin with numbers.

Stricter checking was introduced in the latest versions of openHAB.

3 Likes

I upgraded from 3.2 to 3.3 (on Raspi / Docker) some weeks back, and after every (!) reboot of the entire Raspi, openHAB did not load with the following log entries:

Launching the openHAB runtime...
**java.io.FileNotFoundException: /openhab/userdata/tmp/karaf.pid (Permission denied)**
	at java.base/java.io.FileOutputStream.open0(Native Method)
	at java.base/java.io.FileOutputStream.open(FileOutputStream.java:298)
	at java.base/java.io.FileOutputStream.<init>(FileOutputStream.java:237)
	at java.base/java.io.FileOutputStream.<init>(FileOutputStream.java:126)
	at org.apache.karaf.main.InstanceHelper.writePid(InstanceHelper.java:126)
	at org.apache.karaf.main.Main.launch(Main.java:278)
	at org.apache.karaf.main.Main.main(Main.java:183)
!SESSION 2022-08-02 21:00:53.456 -----------------------------------------------
eclipse.buildId=unknown
java.version=11.0.15
java.vendor=Eclipse Adoptium
BootLoader constants: OS=linux, ARCH=arm, WS=gtk, NL=en_US

!ENTRY org.eclipse.osgi 4 0 2022-08-02 21:00:53.731
!MESSAGE Error saving on update
!STACK 0
**java.io.IOException: Permission denied**
	at java.base/java.io.UnixFileSystem.createFileExclusively(Native Method)
	at java.base/java.io.File.createTempFile(File.java:2129)
	at org.eclipse.osgi.storagemanager.StorageManager.createTempFile(StorageManager.java:744)
	at org.eclipse.osgi.storagemanager.StorageManager.getOutputStream(StorageManager.java:807)
	at org.eclipse.osgi.storage.Storage.save0(Storage.java:1307)
	at org.eclipse.osgi.storage.Storage.save(Storage.java:1281)
	at org.eclipse.osgi.internal.framework.StorageSaver$StorageSaverTask.run(StorageSaver.java:31)
	at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515)
	at java.base/java.util.concurrent.FutureTask.runAndReset(FutureTask.java:305)
	at java.base/java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:305)
	at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128)
	at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628)
	at java.base/java.lang.Thread.run(Thread.java:829)

Just restarting only the openHAB container always solved the problem, but as a Newbie it almost derailed me.

From what I can see, this was a cache problem, which I resolved viaā€¦

sudo su
cd /var/lib/docker/volumes/
rm -r /var/lib/docker/volumes/openhab_data_openhab_userdata/_data/tmp/*
rm -r /var/lib/docker/volumes/openhab_data_openhab_userdata/_data/cache/*

Assuming this is not a usability problem on my side, maybe a future update can just empty the cache to avoid this.

Itā€™s a permission problem. Did you by chance change the UID under which OH is running inside your container?

During an upgrade, the cache is already cleared automatically, but if the permissions are wrong it wouldnā€™t be able to do so. Look in userdata/logs/update.log to see if there were any errors after ā€œClearing the cacheā€¦ā€.

Not that I know of. If I remember correctly, I did a fresh install of 3.2 to get rid of another problem with frequent disconnects (unfortunately not successfully :confused:), restored my userdata via duplicati, and then some weeks later did the update.

Looks ok to me:

Replacing userdata system files with newer versions...
Clearing cache...
Performing post-update tasks for version 3.3.0:
  Deleting File: /openhab/userdata/config/org/openhab/mqttbroker.config
SUCCESS: openHAB updated from 3.2.0 to 3.3.0

All I can say is if it ever happens again, weā€™ll need to see the permissions on those files. File permissions all based on user and group and a ā€œPermission Deniedā€ error means the user openHAB is running under does not have permission to write (in this case) to that file nor permission to create files in those folders.

Given the complexity added by containers itā€™s easy to get this messed up. Beyond that, all I can do is repeat that the upgrade script already does clear the cache.

Thanks.

In case this comes up again Iā€™ll report back.

I am having the same problemā€¦and dealing with some life circumstances making it hard to troubleshoot. The things that do not initialize correctly are WLED and Hue Motion Sensorsā€¦ I guess Iā€™ll try to delete and re-add, but no amount of clean reboots and clearing cache seemed to helpā€¦ and not sure where to lookā€¦

{
ā€œ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.10.103-v7l+ā€,
ā€œosArchitectureā€: ā€œarmā€,
ā€œavailableProcessorsā€: 4,
ā€œfreeMemoryā€: 70032264,
ā€œtotalMemoryā€: 259522560,
ā€œstartLevelā€: 70
}
}

and the hue sensor reports this:

HANDLER_CONFIGURATION_PENDING 
{ledindication=The data type of the value (class java.math.BigDecimal) does not match with the type declaration (BOOLEAN) in the configuration description.}

A least for this the answer could be found in this thread by searching for ā€œledindicationā€. Likely you have a number like ā€œ0ā€ that used to work, but now needs to be ā€œfalseā€ or ā€œtrueā€. That is what the message says. ā€œBigDecimalā€ is not ā€œBooleanā€. Details above.

1 Like

Scroll to the very bottom of the release notes, there is a title called " Breaking Changes that Require Manual Interaction after the Upgrade"

Release openHAB 3.3.0 Ā· openhab/openhab-distro (github.com)

Also a thread about the changes here for WLED

WLED Binding: New bridge / thing version with global controls - Add-on Marketplace / Bundles - openHAB Community

1 Like

Hi,
I upgraded from 3.2.0 to 3.3.0.
I reinstalled the netatmo binding, and reconfigured it.
The Rain gauge and weather station are working fine.
But I cannot configure a bridge for the Netatmo relay plug. The field for the bridge in the ui is empty.
What am I missing ?

thanks in advance
Willy

Isnā€™t this a drop down? (i.e. click on it to seeā€¦)

Yes but it is emptyā€¦

The release notes mention a breaking change for netatmo binding and what to do.

I did read the release notes, and removed netatmo binding, then installed the new one, and reconfigured it.
Weater, outdoor and rain are working, but the Thermostat (aka plug, room, valve) is not.
In the Relay plug i cannot select a bridge. I would expect that this is the Netatmo account ?

You probably needs first a Home thing.

What if you do not own a NAhome device ?

Another question: is it normal that after a restart of openhab you need to re-authenthicate your netatmo account ?

Thanks in advance
Willy

Not needed if setup was done properly.

In the Netatmo app, are all your energy devices not attached to a home?
I believe it should (even if I canā€™t test myself) , the same as for security stuff.

Try to discover in UI, this will show all the things and their hierarchy.