I think the solution may be simpler. Seems like there are two problems:
1) ServiceMBeanSupport.jbossInternalCreate() doesn't have the kind of state transition
validity checking logic that jbossInternalStart()/Stop()/Destroy() do. So, two calls to
create() result in two calls to createService(). This won't happen with the other
service lifecycle methods. Do you know any reason why
ServiceMBeanSupport.jbossInternalCreate() doesn't start with something like
| if (state == CREATED || state == STARTING || state == STARTED
| || state == STOPPING || state == STOPPED)
| {
| return;
| }
|
2) ClusterPartition is doing naughty stuff by making invocations on another service in
createService(). That's going to be moved to startService().
I've been testing a fix based on #1 and I believe I avoided the problem you posted.
But it looks like something's changed in the deployment ordering that's exposed a
bug in how DRM coordinates with ClusterPartition. Effect is the server start hangs. So,
I've got to sort that before I can confirm that fixing the above 2 issues gets rid of
the problem.
View the original post :
http://www.jboss.com/index.html?module=bb&op=viewtopic&p=4084291#...
Reply to the post :
http://www.jboss.com/index.html?module=bb&op=posting&mode=reply&a...