if A is not available, it will try B, then C and if no one answers, it will try to discover another server on the same subnet.
But in my side, if A is not available( amin the server machine power off), it just waiting.However if the machine power on but the application server has not been started yet, then everything is ok.It just try others.
In cluster-service.xml there is some settings about PING. Something may be wrong about this. I tried to decrease the PING timeout but it did not worked.
( also it starts from C not A. If C is not avalibale then it is trying B and C. Is it interesting)
( it starts from C not A. If C is not avalibale then it is trying B and A)
I am not sure I understand. If/when it hangs generate a thread dump and post it.
I noticed that it just waiting too much, it is not locked. After some times ( almost 5 minutes), it switch the second app and everything become normal.There is no genereted thread dump because it just waiting in that time. No action.
even if it is just waiting, there are threads => thread dump. Let's see where it hangs.
It is the last view. It waits just after the succesfull deploy message. When the next server become active, then application start and other messages come.
10:35:27,393 INFO [EjbModule] Created
10:35:27,399 INFO [EjbModule] Starting
10:35:44,243 INFO [EjbModule] Started
10:35:44,244 INFO [MainDeployer] Deployed package: file:/usr/local/jboss/jboss-3.0.6/server/all/deploy/ejb-bs4c.jar
ok, so when it waits, press (on Windows) CTRL+BREAK and this will generate a thread dump: we need it.