Then I look forward to your PR that fixes the problem. You clearly know more than I or the devs.
I assume the problem is that Karaf never āfinishesā loading configuration. One of its selling points is that it can be reconfigured on-the-fly without restarting.
The upside to this is that you can do things like install a binding without needing to restart. Without having a look at the openhab-core source I assume it also has a hand in dynamically reconfiguring things when *.items files etc. change.
The downside to this is that you have to deal with dynamic configuration changes somehow. There are no nice and clear āstagesā, at best you might get a notification that current configuration is āstableā.
With something as complex as openHAB itās going to be easy to make a mistake in a dependency graph/ configuration change handler somewhere which results in things acting in a way you did not intend.
They are, and they can and will work at first startup just fine. Did you ever see a totally fresh openhab fail on the first startup?
Things gets messy when you start to add exstra, like bindings, things and items. And even more messy when rules are added.
Never said that. And you know it
Well, yes, but the stuff like bundles and bindings and persistence and blah has nothing much to do until you start adding the final working parts naturally itās stress free.
No, I said I dont believe it. Thats not the same as knowing!
I dont believe the moon is flat as a pancake either. But I have never been there. So itĀ“s wrong of me saying I dont believe it?
Futher more I gave an example, which, from a logical aspect should indicate WHY I find it hard to believe.
Exactly my point in my previous logical example.
Rich says there is no wayā¦ But where is the difference is that procedure, and the manual one, where the user add his stuff one by one? A trade off may be, it take much longer to start. But is that a bad trade off rather than an unstable system, or a system which need another restart? IĀ“m used to do a coupple of restarts every time I have cleaned the cacheā¦ It takes quite a while longer as well.
Specially for Bruce and Richā¦
No, I DONT KNOW. And I SORRY if IĀ“m wrong. I See this stricly from a very simple and logical aspect! There may be something preventing this from working, which I have no idea of. Then IĀ“m sorry, again! I DONT KNOW!.
This problem has existed since before OH 2.0 was released. Looking through the issues shows at least one issue (there have been dozens over the years) that was opened in 2016 and continued to be worked on with new ideas proposed from that point until 2018 when ESH was merged into OH 3. Presumably the issue was moved over from there to openhab-core but I didnāt look for it.
I counted about 8 developers/maintainers including Kai himself who worked on this issue .
When you say āI donāt believe itā you are saying that the maintainers are either lying to you or they are incompetent. I doubt you would think they are lying to you which leaves that you think they are incompetent. If the maintainers are incompetent than you must know something we donāt in order to make that assessment.
And logical analysis doesnāt help. Aristotle logically deduced that women have fewer teeth than men because women have smaller mouths. He never bothered to actually look and count teeth. He was applying logic out of ignorance and came to the wrong conclusion.
Maybe itās a language difference, but after being told that the experts in the system have spent years looking for a solution, your reply of āI donāt believe it, it canāt be that hardā can only mean āyou and all of the people who have looked for a solution are ignorant or incompetent or both.ā
please donāt feed the troll, this was an interesting conversation
I think you are all being a bit unnecessarily harsh on @Kim_Andersen. You seem to have got the wrong end of the stick.
Letās all take a step back and look at the simple exchange that started this argument (emphasis mine):
I think that is a perfectly reasonable response with no implications about the character of the core developers and no implication that @Kim_Andersen thinks they know better than them.
There probably are many ways to approach doing it in Karaf.
There is even the concept of ārun levelsā in OSGi even though it is all about dynamically loadable components:
https://docs.osgi.org/specification/osgi.core/7.0.0/framework.startlevel.html
The thing is this is a difficult problem to solve and different solutions have different trade-offs.
As we have seen with @evansnpās problem the āfully dynamicā solution may in general be good but it exposes itself to problems with race conditions if required dependencies are not defined perfectly.
Some approaches with ārun levelsā may result more stable deterministic behaviour but have an unacceptably long āstutterā as you have to roll back run levels on a config change and then pause at each level to make sure you are ready to move on.
The fact that the core developers have been discussing this problem since at least 2016 and not yet found a ārun levelā solution that is better than a āfully dynamicā solution does not imply the problem is impossible or that the core developers are unskilled. It implies that the problem is very hard to solve and there may not be an āperfectā solution taking either approach.
Now letās go back to having a nice discussion without assuming ill intent and piling on people.
Ross, thank you, Iāve read a number of your posts in the development forum where you have helped a number of folks with technical issues and am impressed with your programing knowledge and hope you continue to contribute to OpenHAB. Rich and I have however been around here a little longer and know this guy has a tendency to climb up on his soapbox and suggest things should be done a certain way and when people gently explain to him it is an all volunteer effort and if he believes something should be done a certain way, then he is welcome to volunteer to contribute, he simply answers with a wall of text that ultimately just wastes everyoneās time.
Again, you seem to really know your stuff and I for one hope you donāt take this the wrong way. If you like I can search a little and provide several examples of his antics
ok, just for fun here is a good one where Kim suggest someone should maintain a database of which binding are being currently developed and which ones have been abandoned. Rich suggests the task is a foolās errant but encourages Kim to do it if he feels like it
be warned 125 posts
Thanks for your support Rossā¦
Unfortunatly there are some people here, who will go through whatever post beeing made, only to find words to suit their own idea of the person, and totally ignoring the rest af the post. (Andrew once again just showed that). They simply cant accept others having another opinion/idea/suggestion/whatever.
It is quite frustrating when some people always turn to becoming unpolite, disrecpect and choose a personal path, simply because they either dont understand or dont agree. āNormal peopleā would ask, if they dont understand, but want to. When they finally understand, they will decide wether they agree or not, and either argument for/against, or leave it at that.
Unfortunatly this isnĀ“t the case here (once again).
I always accept other people opinions. It doesnt mean I will agree with them, but I accept their opinion. I always respect them, unless theyĀ“re given me a reason not to, like beeing unpolite, disrespectfull and direct personal attacks, while ignorering the whole point. As you can see from Andrew, this is a part he has a huge problem with. The only post he contributed to this thread, is a personal vendetta against me where he, once again, managed to ignore aprox 99% of what IĀ“ve written, and focused on the one and only thing which suits he personal opinion about me, āI dont believe thatā.
That makes it highly difficult to have a nice (or just a polite) respectfull discussion with a person like that stepping in like that.
As usual, IĀ“ll rest my caseā¦ I dont need this kind of discussion with anyone who seem more focused on twisting peoples post in a way to ruin the debate and turning it into a personal matter. IĀ“m sure these few people will go on anyway. So its probably best to just leave them to discuss their āworldā among themselves. IĀ“m out.
This debate is starting to look like the systemd debacle in Linux
On the topic of āhow does the cache ageā
Iāve been able to try a 15 or so hour āsystem offlineā (same calendar date), and the boot came up clean.
After a 36 hour sleep (different date obvs), the usual odd missing Items and method/action - in this case
- Rule 'frost check': The name 'triggeringItem' cannot be resolved to an item or type; line 132, column 6, length 14
In this case, one more reboot appeared to come up clean, rather than the usual two.
I speculate this cache, or parts of, āexpiresā either on a calendar date change or >24 hours or so.
@rossgb, while I donāt agree with everything he said, Andrew has a point in his latest post.
Iām also one of the dinosaurs and āpeopleā @Kim_Andersen is targeting in his recent āfinalā post.
I also could contribute quite some more threads on Kimās, well art of discussion.
But I wonāt as I donāt wanna turn up the heat.
Instead Iāll just throw in some facts for those interested:
Use of these has been proposed a number of times. Latest attempt is 3 days ago by myself to add this to openhab-distro
. Myself and others tested that, of course.
But Kai once more refused to introduce OSGi start levels because they can cause are all sorts of problems. Itās probably also a ādogmaā thingy, but given he has 10+ yrs experience in programming OSGi, I do not question his statement.
On the flip side, good news if you read on is that he also said he started work on an āalikeā feature as part of his works on the next-gen rules engine.
CAUTION: this is not directly targeted at the problem here so might not help right away, and itās (probably) not there before OH3.