|Bundles inside plans are started concurrently, causing problems [message #1132702]
||Fri, 11 October 2013 10:34
|| Sven Panko
Registered: February 2011
I am currently facing an issue that hit me several times over the last couple months with various versions of Virgo (3.0, 3.5 and 3.6). "Unfortunately", the problem always miraculously resolved itself somehow, so I did not have the time for a deeper investigation. Here is my "setup":
* a large number of (Spring-powered) bundles in the repository/usr directory
* some plans in the repository/usr directory (plans are atomic, not scoped)
* one "master" plan in the pickup directory (again, atomic, not scoped)
The master plan is referencing the other plans in the repository/usr directory in a specific order and inside each plans the bundles are also sorted due to interdependencies. What I observe now is the following: resolving the plans and the bundles inside them happens in the expected order (as stated in the plan). However, the startup of the Spring contexts in the bundles is done concurrently (I see a number of different "start-signalling-" threads printing out log messages), which leads to problems, because some contexts are powered up faster than others and the interdependencies sometimes cause problems - but not in the terms of "timeout waiting for service" etc, but in terms of really strange exceptions (like ClassNotFoundExceptions of classes inside the same package they are referenced etc.). If I deploy the bundles manually one by one in the order I initially specified in the plans and wait with the deployment of the next bundle until the previous bundle's Spring context is fully started, everything works like a charm.
To sum it up, I'd like to know if there is a way to "force" Virgo to skip concurrent execution of Spring context initialization or if my setup is just screwed and I need to think it over.
Thanks in advance
[Updated on: Fri, 11 October 2013 10:34]
Report message to a moderator
Powered by FUDForum
. Page generated in 0.05915 seconds