Rules executed before system is ready

I am using openhab 2.4 on a RPi3+. I am having problems during startup, some rules are executed although the openhab doesn’t seem to be ready. Example:

2019-05-10 17:32:32.178 [ERROR] [ntime.internal.engine.RuleEngineImpl] - Rule 'KNX IP interface online systemstart': The name 'VerbindungKNXInterface' cannot be resolved to an item or type; line 13, column 17, length 22
2019-05-10 17:32:46.854 [ERROR] [ntime.internal.engine.RuleEngineImpl] - Rule 'System started Logik': The name 'logInfo' cannot be resolved to an item or type; line 30, column 5, length 46

Items and even builtin function names are unknown to the rule engine. There are no spelling errors and the rules are executed correctly after some minutes, if the trigger reocurrs. However some triggers like

Thing 'knx:ip:bridge' changed from UNKNOWN to ONLINE

don’t reoccur which poses some problems to me. Yes I could work with timers, but probably also the timer function will not be known yet.

Is there a solution to this startup order problem?

Thanks in advance

This is unfortunately a well-known and still not fully resolved issue, mostly there are issues with persistence, but I have seen the errors you are encountering myself; there are various work-arounds for now that you can use:

This is implemented in openHABian so if you use that just have it upgrade itself and select the proper option from the menu.

Hmm, I’m not sure if this is really the same problem. The problem is not that the state of the items are not yet known, but that the items and even system keywords like “loginfo” are not yet known. However I will read into and try the suggested solutions in the next days.

I didn’t find the option in openhabian-config yet, how is this called there?

Delay rules load (option 44)

2 Likes

I activated this option and changed my rules to adapt to the new situation, now everything is fine. Thanks!

It seems that I only can activate this (ot at least I don’t see an indication - just the fact, that the .rules are renamed to .x files)
How to deactivate this function?

The unnumbered option right below :roll_eyes:

Alright - thanks.