[JBoss JIRA] Created: (JBREM-1099) Make MulticastDetector detection message send buffer size configurable
by Galder Zamarreno (JIRA)
Make MulticastDetector detection message send buffer size configurable
----------------------------------------------------------------------
Key: JBREM-1099
URL: https://jira.jboss.org/jira/browse/JBREM-1099
Project: JBoss Remoting
Issue Type: Bug
Security Level: Public (Everyone can see)
Affects Versions: 2.5.0.SP2 (Flounder) , 2.2.2.SP12
Reporter: Galder Zamarreno
The multicast detector does not work properly …
[View More]in environments where plenty Remoting invokers are
used, such as the case of EAP 4.3 where you have invokers for EJB3, EJB2, JMS...etc.
What happens is that org.jboss.remoting.detection.AbstractDetector.createDetection(), it creates a
detection message based on the server invokers registered locally. As there's one more invoker in
EAP 4.3.x, the message size exceeds the 4000 limit.
This leads to errors like:
2009-02-12 15:19:26,846 DEBUG [org.jboss.remoting.detection.multicast.MulticastDetector] heartbeat failed
java.io.IOException: Message too long
at java.net.PlainDatagramSocketImpl.send(Native Method)
at java.net.DatagramSocket.send(DatagramSocket.java:612)
at org.jboss.remoting.detection.multicast.MulticastDetector.heartbeat(MulticastDetector.java:226)
at org.jboss.remoting.detection.AbstractDetector$Heartbeat.run(AbstractDetector.java:716)
at java.util.TimerThread.mainLoop(Timer.java:512)
at java.util.TimerThread.run(Timer.java:462)
The size of the buffer where the Detection message is sent comes from:
private final class Listener extends Thread
{
boolean running = true;
public Listener(String name)
{
super(name);
}
public void run()
{
byte[] buf = new byte[4000];
DatagramPacket p = new DatagramPacket(buf, 0, buf.length);
//p.setAddress(addr);
//p.setPort(port);
while(running)
{
listen(p, buf);
}
}
}
The size of the buffer needs to be made configurable.
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: https://jira.jboss.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira
[View Less]