OH 4.3.4 does not restart because of many exceptions

  • Platform information:
    • Hardware: x64, 120GB SSD, 8GB RAM
    • OS: Ubuntu 24.04.2 LTS
    • Java Runtime Environment: openjdk version “17.0.14” - Zulu17.56+15-CA
    • openHAB version: 4.3.4

Because some things inside the running instance produces errors, I made a restart of the service.

After that, the instance does not comes up and I have many exceptions in the openhab.log. I’ve tried a cache-clean, but nothing helps and I dont found any hints on the net.

Status from the service:

● openhab.service - openHAB - empowering the smart home
     Loaded: loaded (/usr/lib/systemd/system/openhab.service; enabled; preset: enabled)
     Active: active (running) since Tue 2025-04-15 10:42:28 CEST; 15min ago
       Docs: https://www.openhab.org/docs/
             https://community.openhab.org
   Main PID: 42545 (java)
      Tasks: 37 (limit: 9439)
     Memory: 188.6M (peak: 215.2M)
        CPU: 12.296s
     CGroup: /system.slice/openhab.service
             └─42545 /usr/bin/java -XX:-UsePerfData -Dopenhab.home=/usr/share/openhab -Dopenhab.conf=/etc/openhab -Dopenhab.runtime=/usr/share/openhab/runtime -Dopenhab.userdata=/var/lib/openhab -Dopenhab.logdir=/var/log/openhab -Dfel>

Apr 15 10:42:34 OpenHABServer karaf[42545]:         at org.apache.karaf.features.internal.service.FeaturesServiceImpl.installConfigs(FeaturesServiceImpl.java:1185)
Apr 15 10:42:34 OpenHABServer karaf[42545]:         at org.apache.karaf.features.internal.service.Deployer.deploy(Deployer.java:961)
Apr 15 10:42:34 OpenHABServer karaf[42545]:         at org.apache.karaf.features.internal.service.Deployer.handlePrerequisites(Deployer.java:1121)
Apr 15 10:42:34 OpenHABServer karaf[42545]:         at org.apache.karaf.features.internal.service.Deployer.deploy(Deployer.java:394)
Apr 15 10:42:34 OpenHABServer karaf[42545]:         at org.apache.karaf.features.internal.service.FeaturesServiceImpl.doProvision(FeaturesServiceImpl.java:1069)
Apr 15 10:42:34 OpenHABServer karaf[42545]:         at org.apache.karaf.features.internal.service.FeaturesServiceImpl.lambda$doProvisionInThread$13(FeaturesServiceImpl.java:1004)
Apr 15 10:42:34 OpenHABServer karaf[42545]:         at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264)
Apr 15 10:42:34 OpenHABServer karaf[42545]:         at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136)
Apr 15 10:42:34 OpenHABServer karaf[42545]:         at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635)
Apr 15 10:42:34 OpenHABServer karaf[42545]:         at java.base/java.lang.Thread.run(Thread.java:840)

java.lang.reflect.InvocationTargetException error message inside userdata/cache/1744706549570.log
1744706549570.log (12.1 KB)

Many “failed to install artifact” error messages inside openhab.log
openhab.log (111.0 KB)

Please try a clean-cache:

sudo systemctl stop openhab.service
sudo openhab-cli clean-cache
sudo systemctl start openhab.service

If you changed some files before the crash, maybe consider to ensure, that all files belong to the openhab user:

sudo openhab-cli reset-ownership

Thanks, but I wrote, that I’ve tried a clean-cache.
I also made a reset-ownership, but nothing happens.

Oh, sorry for that, missed that line…

As all logs are about

Failed to install artifact: /var/lib/openhab/etc/org.apache.karaf.features.cfg
 java.lang.NumberFormatException: For input string: "���" under radix 16

maybe your file system is corrupt (and it’s org.apache.karaf.features.cfg which is defect)?

This is, how the file should look like:

################################################################################
#
#    Licensed to the Apache Software Foundation (ASF) under one or more
#    contributor license agreements.  See the NOTICE file distributed with
#    this work for additional information regarding copyright ownership.
#    The ASF licenses this file to You under the Apache License, Version 2.0
#    (the "License"); you may not use this file except in compliance with
#    the License.  You may obtain a copy of the License at
#
#       http://www.apache.org/licenses/LICENSE-2.0
#
#    Unless required by applicable law or agreed to in writing, software
#    distributed under the License is distributed on an "AS IS" BASIS,
#    WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
#    See the License for the specific language governing permissions and
#    limitations under the License.
#
################################################################################

#
# Comma separated list of features repositories to register by default
#
featuresRepositories = \
    mvn:org.openhab.distro/distro/4.3.3/xml/features, \
    mvn:org.openhab.distro/openhab-addons/4.3.3/xml/features, \
    mvn:org.apache.karaf.features/framework/4.4.6/xml/features, \
    mvn:org.apache.karaf.features/standard/4.4.6/xml/features, \
    mvn:org.apache.karaf.features/specs/4.4.6/xml/features

#
# Comma separated list of features to install at startup
#
featuresBoot = \
    instance/4.4.6, \
    package/4.4.6, \
    log/4.4.6, \
    ssh/4.4.6, \
    framework/4.4.6, \
    system/4.4.6, \
    eventadmin/4.4.6, \
    feature/4.4.6, \
    shell/4.4.6, \
    service/4.4.6, \
    jaas/4.4.6, \
    openhab-runtime-base, \
    openhab-runtime-ui, \
    deployer/4.4.6, \
    diagnostic/4.4.6, \
    bundle/4.4.6, \
    config/4.4.6, \
    kar/4.4.6

#
# Resource repositories (OBR) that the features resolver can use
# to resolve requirements/capabilities
#
# The format of the resourceRepositories is
# resourceRepositories=[xml:url|json:url],...
# for Instance:
#
#resourceRepositories=xml:http://host/path/to/index.xml
# or
#resourceRepositories=json:http://host/path/to/index.json
#

#
# Defines if the boot features are started in asynchronous mode (in a dedicated thread)
#
featuresBootAsynchronous=false

#
# Service requirements enforcement
#
# By default, the feature resolver checks the service requirements/capabilities of
# bundles for new features (xml schema >= 1.3.0) in order to automatically installs
# the required bundles.
# The following flag can have those values:
#   - disable: service requirements are completely ignored
#   - default: service requirements are ignored for old features
#   - enforce: service requirements are always verified
#
#serviceRequirements=default

#
# Store cfg file for config element in feature
#
configCfgStore=false

#
# Define if the feature service automatically refresh bundles
#
autoRefresh=true

#
# Configuration of features processing mechanism (overrides, blacklisting, modification of features)
# XML file defines instructions related to features processing
# versions.properties may declare properties to resolve placeholders in XML file
# both files are relative to ${karaf.etc}
#
#featureProcessing=org.apache.karaf.features.xml
#featureProcessingVersions=versions.properties

I’ve checked the whole filesystem now and also the org.apache.karaf.features.cfg. Both are ok and valid.
But the problem still exist.

Hm.

I guess, you also already did a complete restart?
Do you have any special things in question of your network? (e.g. a special firewall, ad-blocker…)

Sometimes I had difficulties with IPv6, which is preferred when available. As a consequence, I then had to reboot my OPNSense router (but it’s been a while since).

Regarding restart, yes I had.

I have special things in my network. PiHole and also pfSense. Of course I checked the logs of both and found nothing. That would have surprised me too, because nothing had changed in the last weeks. And if I say “nothing in the last weeks”, I means nothing in pihole, nothing in the firewall and nothing on my OH server too. The one and only thing was a restart of the OH service.

Because I’m a professional software engineer (but not Java), so in my opinion there is mistake in the code or in a not cached config file. It is totally illogical, that after a service restart such behavior occurs.

In the last minutes I’ve tried a reinstall of OH and the addons, but the problem still exist.

Is there an OH developer out there, who can explain me, at which point the problem is?