[jboss-jira] [JBoss JIRA] Created: (JGRP-667) Occasionally, messages get too large for the UDP transport

Bela Ban (JIRA) jira-events at lists.jboss.org
Fri Jan 18 06:23:21 EST 2008


Occasionally, messages get too large for the UDP transport
----------------------------------------------------------

                 Key: JGRP-667
                 URL: http://jira.jboss.com/jira/browse/JGRP-667
             Project: JGroups
          Issue Type: Bug
            Reporter: Bela Ban
         Assigned To: Bela Ban
             Fix For: 2.6.2, 2.7


When message bundling is enabled (say max_bytes=60K), every now and then we get a larger message (say 70K), and then the msg is dropped because UDP has a size limit of 65K.

This can happen as follows:
- Either magic-map.xml is not found or some headers are not in magic-map
- Say we accumulated 100 messages in the message bundler. Before adding a new message, the bundler
  checks its size (Message.size()), which calls size() on all headers
- A header just assumes it has a magic number and returns its size, including 2 bytes for the magic number (a 
  short)
- If magic-number.xml is not found, or some headers have no magic number, then we write the fully qualified  
  classname of the class into the stream. So let's assume that's 30 bytes versus the 2 size() returned.
- If we have 3 headers/msg which have the additional 28 bytes, and 100 messages, then the serialized 
  message is 8400 bytes larger than what Message.size() returned
- So the marshalled message is now 68400 bytes and it will get discarded by UDP !


-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: http://jira.jboss.com/jira/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira

        



More information about the jboss-jira mailing list