[rabbitmq-discuss] Rabbitmq 2.5-2.6.1 java hanging on close of connection

Benjamin Bennett benbennett at gmail.com
Wed Mar 7 14:41:51 GMT 2012

Just wondering if this has been fixed in the latest releases?

On Mon, Nov 28, 2011 at 10:18 AM, Benjamin Bennett <benbennett at gmail.com> wrote:
> " But for the purpose of your tests maybe you could work around this by not
>  closing the channels at all?"
> Our code never actually closes any channels the spring-amqp lib closes
> the channels when the spring context is destroyed.
> I have a hack for now and just added a timeout to the spring-amqp lib
> when it closes the connection.
> Thanks for all your help. I will be looking for the release that fixes
> this issue.
> On Mon, Nov 28, 2011 at 10:05 AM, Simon MacMullen <simon at rabbitmq.com> wrote:
>> On 21/11/11 16:10, Benjamin Bennett wrote:
>>> Our application is using the CachingConnectionFactory, Spring
>>> Integration AMQP .
>>> The way this is happening is just by applying the @DirtiesContext in
>>> our unit test , that we need to reload the context, at that time the
>>> channel close and connection close are closed in different threads.
>>> The BlockingQueueConsumer is the one that end ups doing the channel
>>> closes but the CachingConnectionFactory actually  does the closes .
>>> The stacktraces have no other threads running except spring-amqp
>>> threads BlockingQueueConsumer and CachingConnectionFactory.
>> I'm afraid I can't really comment on spring-amqp - I don't know if Dave can?
>> But for the purpose of your tests maybe you could work around this by not
>> closing the channels at all?
>>> My only comment about attracting attention it is a race condition ,
>>> and race conditions are the most painful bugs to have to deal with.
>> Oh, absolutely.
>>> On my dev box I have only seen the issue one time in 200 runs that ran
>>> over night.
>>> On our test windows 7 vms it happens 50% of the time, sample size was 40
>>> runs.
>>> On our windows xp test vms it has never happened.
>>> In our production we get a "The service failed to close in timely
>>> manner" and doesn't shut down.
>>> Finally if you are fixing it in the server , what about the previous
>>> versions? I don't even think spring-amqp has migrated to 2.7 series
>>> java client because it is backwards incompatible.
>> You don't need to use the same versions of client and server - just
>> upgrading the server should be fine.
>> Cheers, Simon
>> --
>> Simon MacMullen
>> RabbitMQ, VMware


Benjamin Bennett
benbennett at gmail.com

"For a successful technology, reality must take precedence over public
relations, for Nature cannot be fooled."
Richard Feynman

More information about the rabbitmq-discuss mailing list