I've noticed an odd issue in SMX. I've got a few projects that run in SMX,
all Blueprint Camel projects, and sometimes some of them seem to get into
an infinite loop when starting up. I've (finally) tracked it down to the
fact that the <cm:propertyPlaceholder> element in each of them is
constantly triggering a refresh. So the bundle loads, then it goes "Oh
dear, the properties file needs updating!", so it unloads the bundle, then
loads it again. Then it forces an update of the properties file, forcing
another bundle unload, and so on, never stopping. Except that sometimes it
doesn't do that, and it just starts up normally.

Has anyone seen this behaviour before? I'm not sure if I should be
reporting it as a bug in Felix or Aries...

I also think it has a lot to do with the fact that I have multiple bundles
that share a single configuration file - three of the bundles all share a
configuration file. If I only have one bundle that uses this particular
configuration file active, then no problems (well, kinda - if it has
previously been in a loop, it may take a few restarts before it stops
looping). It also doesn't seem to be an issue if the bundles are reasonably
far apart in the startup order, which suggests a race condition, but I'm
not sufficiently knowledgeable about Karaf / Aries / Felix to be able to
easily debug this. The really odd bit is that it will quite happily start
two of the three bundles, but get stuck on the last.

Has anyone experienced this before? Is there a better way than having
multiple bundles sharing one config file? I suppose I could create multiple
config files and symlink them, see if that solves it.

Thanks,

- Andrew Thorburn

Reply via email to