On Dec 14, 2007 2:41 AM, Trustin Lee <[EMAIL PROTECTED]> wrote: > On Dec 13, 2007 11:35 PM, Frederic Soulier <[EMAIL PROTECTED]> wrote: > > Hi Trustin > > > > Thx for your answer. It makes sense. > > > > In our case UDP messages from clients are guaranteed to fit in 1 UDP > > packet therefore the fact that UDP packet #2 may arrive before UDP > > packet #1 is not relevant. At our level we just get message #2 before > > message #1 and they are completely independant. > > Obviously should the need arise to have larger messages from the > > client we'll have to reconstruct the messages using UDP packets in > > the right order. > > > > The 2nd interesting finding which is more disconcerting is that using > > MINA 1.1.3 there's effectively no accumulation by the > > CumulativeProtocolDecoder for UDP traffic. > > We skipped MINA 1.1.4 because of an issue with ProtocolCodecExection > > I reported. > > With MINA 1.1.5 the ProtocolCodecException works as per 1.1.3 but the > > CumulativeProtocolDecoder now accumulates data for UDP! > > > > Our app using 1.1.3 --> no accumulation for UDP > > Our app using 1.1.4 --> accumulation for UDP > > > > Could you confirm this change of behaviour? > > That's very weird. If so, it's a compatibility bug. At least, in > 2.0, it should do nothing if TransportMetadata.hasFragmentation() > returns false. I think I didn't touch a line in > CumulativeProtocolDecoder in 1.x anyway. Let me check it out and get > back to you.
Yeah, it seems like nobody made change in CumulativeProtocolDecoder. It's probably a side effect of some changed in other parts of the core. I don't know where it is though. Let me fix this in 2.0 rather than addressing it in 1.x, because it basically doesn't make sense to a UDP application to send a partial message and we don't have any means to figure out the transport has fragmentation or not. Thanks again for your understanding. Trustin -- what we call human nature is actually human habit -- http://gleamynode.net/ -- PGP Key ID: 0x0255ECA6