[rabbitmq-discuss] .NET client hangs on BasicGet

Matthias Radestock matthias at lshift.net
Thu Jan 14 13:53:42 GMT 2010


Peter,

Peter Townsend wrote:
> The tracer output is attached.

So the interaction ...

1263466055492: conn#0 ch#1 -> 
{#method<basic.get>(ticket=0,queue=001.load.release.update,no-ack=false),null,""}
1263466055507: conn#0 ch#1 <- 
{#method<basic.get-ok>(delivery-tag=20,redelivered=false,exchange=amq.direct,routing-key=001.load.release.update,message-count=123),#contentHeader<basic>(content-type=null, 
content-encoding=null, headers=null, delivery-mode=2, priority=null, 
correlation-id=null, reply-to=null, expiration=null, message-id=null, 
timestamp=null, type=SupplierReleaseUpdate, user-id=null, app-id=null, 
cluster-id=null),"<MESSAGE>"}
1263466057457: conn#0 ch#1 -> 
{#method<basic.ack>(delivery-tag=20,multiple=false),null,""}
1263466057457: conn#0 ch#1 -> 
{#method<basic.get>(ticket=0,queue=001.load.release.update,no-ack=false),null,""}

... is the very last thing you see before it gets stuck? If so then that 
is very interesting since it would indicate that the server is failing 
to reply to the basic.get. Either that, or the reply from the server has 
gone astray.

The next step is getting your source code so I can try to reproduce your 
observations locally.

> I mentioned before that the consumer is hanging after the same
> messages each time. (As I have been reloading the same messages into the
> queue and reattempting the consumer run). Once the consumer passes
> message A it hangs. If I continue running it will soon hang after a
> different message B. If I reset and reload the queue and re-run the
> consumer it will hang after message A again.
> 
> Perhaps an issue with the message content? (binary serialized XML)

The message content is opaque to the server and the client library.

However, since you are running on Windows ... we have had some reports 
from people indicating that Windows may be interfering with XML 
payloads, resulting in all kinds of mysterious behaviours. So one 
possible thing to try is to encrypt your payloads.


Regards,

Matthias.




More information about the rabbitmq-discuss mailing list