[jboss-user] [Remoting] - Re: MulticastDetector crashes my network
ron.sigal@jboss.com
do-not-reply at jboss.com
Tue Aug 5 00:25:18 EDT 2008
Hi Santiago,
I think I see what is happening. As I commented in JBREM-991,
anonymous wrote :
| It seems that the problem is a combination of
|
| 1) the fact that listen() calls heartbeat() upon receiving something other than a Detection, and
|
| 2) the fact that when heartbeat() creates a null Detection (due to the fact that there are no servers running in the JVM), it sends an empty packet.
|
| So heartbeat() sends a null Detection, listen() receives it and calls heartbeat(), which sends out a Detection, etc. The problem is that, even though the timing of heartbeat() running in the Heartbeat TimerTask is regulated, listen() is not - it responds immediately upon reading something from the multicast socket, and the response can include a call to heartbeat.
|
| MulticastDetector.heartbeat() has been changed so that if it creates a null Detection, it just returns instead of sending it.
|
If you want to test my fix, it's just the insertion of two lines in org.jboss.remoting.detection.multicast.MulticastDetector.heartbeat()
| if(socket != null)
| {
| Detection msg = createDetection();
| if (msg == null) // <== inserted
| return; // <== inserted
| ...
|
-Ron
View the original post : http://www.jboss.com/index.html?module=bb&op=viewtopic&p=4168612#4168612
Reply to the post : http://www.jboss.com/index.html?module=bb&op=posting&mode=reply&p=4168612
More information about the jboss-user
mailing list