Thursday 24 June 2010

Long time between updates

I've managed to find some time out from my day job (crazy busy at the moment) to drop in an update to the Mono - RabbitMQ/AMQP integration. The RabbitMQ client is now at version 1.8 and up to date with the latest from the RabbitMQ team.

5 comments:

knocte said...

Any chance you can have a look at this bug?

https://bugzilla.novell.com/show_bug.cgi?id=591301

Thanks

Anonymous said...

Hey Mike,

Where can I get this latest update? I looked all over github in the Mono repository and didn't find it.

Thanks!

Michael Barker said...

This was checked into svn before the move to github. Its in the main branch: http://github.com/mono/mono/blob/master/mcs/class/RabbitMQ.Client/ChangeLog

Anonymous said...

Cool, I cloned the master branch and recompiled mono. (forgive me if this isn't the best place to discuss this...) Then I took out System.Messaging.dll, Mono.Messaging.dll, Mono.Messaging.RabbitMQ.dll and RabbitMQ.Client.dll from mcs/class/lib and used them as reference for the sample code that you provided on the Mono webpage. I tried to run it with both RabbitMQ 1.8.0 and 1.8.1 installed and I keep getting this error:

Unhandled Exception: RabbitMQ.Client.Exceptions.OperationInterruptedException: The AMQP operation was interrupted: AMQP close-reason, initiated by Peer, code=406, text="PRECONDITION_FAILED - parameters for queue 'testq' in vhost '/' not equivalent", classId=50, methodId=10, cause=

log file shows:


=ERROR REPORT==== 8-Aug-2010::15:05:33 ===
connection <0.206.0> (running), channel 1 - error:
{amqp_error,precondition_failed,
"parameters for queue 'testq' in vhost '/' not equivalent",
'queue.declare'}

It works fine when I use rabbitmq-server 1.7.1

I'll see if I can just build System.Messaging on its own without the rest of Mono and try again.

Michael Barker said...

If you've checked out the Mono source and done a full build, go into the mcs/class/System.Messaging directory and run: 'make run-test'. This works for me against rabbit-mq 1.8.1.

I may need to update the example.