[Spread-users] Sudden freezes in message delivery using C API

Doug Palmer Doug.Palmer at csiro.au
Mon May 21 23:02:16 EDT 2007


We're using spread (4.0.0rc2) to provide messaging for a mixed Java/C++
environment across a WAN and we're seeing odd freezes in components
using the C API when we start sending a reasonable message rate. What
happens is that message delivery appears to freeze for 2-5 seconds and
then resume, with no messages lost. The messages are on the order of 1kb
each.

With two machines, trabant (remote) and beetle (local)

trabant (C++) -> beetle (Java) 20mps bad
trabant (Java) -> beetle (Java) 20mps OK
trabant (Java) -> beetle (Java) 50mps OK
trabant (Java) -> beetle (C++) 20mps OK
trabant (Java) -> beetle (C++) >30mps bad
beetle (Java) -> beetle (C++) >30mps OK

And, bizarrely,

trabant (Java) -> beetle (C++) >30mps and beetle (Java) -> beetle (Java) 20mps OK

With the first and second message streams coming from and going to different components. 
We've done some experiments and, as far as we can see, having anything send messages to
anything, under some circumstances that we can't identify, seems to overcome the freezes,
even if the message senders and receivers don't seem to be related to the thing which freezes.
However, we can't quite fix this by just automatically sending a few messages to nowhere, 
since the system seems to detect our treacherous intention and still exhibits the freezing
behaviour.

The WAN is the CeNTIE network: very high bandwidth and very reliable. Nothing else seems 
to have any trouble with it.

The C++ programs are WxWidgets applications.

Any suggestions as to what might be happening gratefully received, since we're starting
to spin conspiracy theories.





More information about the Spread-users mailing list