Openhab 4.0.1 System unstable from "class org.openhab.core.internal.items.ItemUpdater"

…i did a question in community about the network-binding and its behavior(no answers) ,
and also filed an issue now for the massive threads.
“best tool for the job”: i did use it because it was an easy way for showing which device running and which is not so other people in family can easily know which device to reboot :wink:
im also/already using prometheus/ LGTM and will use more this tool for that.

Today in morning it crashed again with WARN ] [] - The queue for a subscriber of type 'class org.openhab.core.internal.items.ItemUpdater' exceeds 5000 elements. System may be unstable.
Im looking further if i can get out something. Maybe a systemlimit like open files or others…

@Scriptwriter just updating that since i unistalled the ip camera binidng i havent (yet) crashed - might be connected, maybe i will just get it later on.


just to put this down also. Zwave module / seems to be acting up also. i receive multiple same data from thermostats and energy meters. i.e. microsecond apart the same data 20 times. could be causing load issues. also send commands dont seem to work. another strange behaviour on my setup.

Hi @alexkarageorgis ,
did you realized that there is a problem of excessive update-logging in 4.0.0 and 4.0.1-versions? See if the nessecary change in log4j2.xml is applied on your site. You can also do update to 4.0.2 which automaticly applies this change.

Thanks @Scriptwriter for pointing in the right direction. did the upgrade to 4.0.2 but not change to the logging. will try your two lines of code then


** update. the file 4j2.xml contains one of the two lines of code -
not this one

   <Logger level="ERROR" name="openhab.event.GroupStateUpdatedEvent"/>

but i dont think this is the issue (see image below)

trying to add with Winscp as i am remote to the device currently but permission to edit/delete or overwrite is denied. is there a smart way to do this?


copy the file e.g. to /tmp folder.
then login via ssh and change to user root ( sudo bash )
from that shell you can copy the file from /tmp folder to the target folder
make sure that ownership and permissions are the same after this

1 Like

thanks @Wolfgang_S appreciate the sharing of cleverness - do you think given the missing code it will correct the issue?
this code exists already

 <Logger level="ERROR" name="openhab.event.ItemStateUpdatedEvent"/>

this part is the only missing part

<Logger level="ERROR" name="openhab.event.GroupStateUpdatedEvent"/>

…all “updatedevent” from your screenshot will suppressed then if you apply the correctly changed log4j2.xml file and after it restarting openhab. I had same issue and it solved this.

sorry just corrected my previous posts as the code wasnt working.
after update in 4.0.2 the part that isnt in the file is the “GroupStateUpdatedEvent” log level the “ItemStateisthere” so do you think given the screen show it could be that? (anyway will try)

in the file you will find other Logger-Entries. The new one should be there with the correct number of spaces on beginning of line as the others. If you are editing the file use Linux-Texteditors (not Windows Editors, they can make wrong CR/LFs) (if you dont know one, and never before used others then take nano). If correctly applied AND after it openhab restarted it reads the file and use it. If you have problems i guess you can download it also from git to the correct place with wget

1 Like

Same error for me.
“The queue for a subscriber of type ‘class org.openhab.core.internal.items.ItemUpdater’ exceeds 5000 elements”
intel i3 + clean proxmox-LXC openhab-only container (ubuntu 22, 5gb+2swap), OH 4.0.2 just stop working after a few days with “exceed 500 errors in log”.
Same container with 3.4 was pretty stable.

…i still have the problem. Until now im getting out only that something seems to consume most ram and in compose log i’ll find then

openhab_1  | [83100.969s][warning][os,thread] Failed to start the native thread for java.lang.Thread "items-queue"

smem then shows a magically border nearly 1M in Case of the problem
2507803 9001 /usr/lib/jvm/java-17-openjd 462104 993956 994094 994236

this time im experimenting to implement a healthcheck to automaticly restart the container, but until today it is not yet working correctly because it tells then it cannot fork the curl-instance if problem appears. So it seems memory inside container has problem, outside it would be possible to handle. So im still experimenting for getting a workaround. The good thing on my site: every morning the problem appears to giv it a new try;-)

what binding do you have? Maybe we have some in a common.

mqtt, unifi +protect, astro, chromecast, hue, network, squeezebox, synopanalyzer, logreader, openweathermap, mail, telegram, shelly, unifiedremote, Netatmo, modbus, miio, viessman

im using a lot of bindings. But
unifi, chromecast, network, openweathermap, telegram
we are using both.

This was my curve of Memory over a week about 1% every day decreasing.

When i disable ipcamera binding it stopped decreasing, stable at 81.4 now

I have a suspicion that the problems of my instance start just after sending a message (and receiving a response) in telegram

in the meantime with optimizing all my rules and also upgrading to 4.0.2 and later 4.0.3 problem no more appears

i had the same problem but i only have telegram respect we are using both.
My OH is 4.0.2