Precondition failed error - parameters for queue ... not equivalent

1,112 views
Skip to first unread message

Ashish Mukherjee

unread,
Dec 18, 2015, 1:16:32 AM12/18/15
to rabbitmq-users
Hi,

I have a Web application in NodeJS which writes to RabbitMQ with durability setting false. I have a Python consumer (using Pika) which uses the same durability setting to read. Messages get written to the queue but when I try to read, I get this error -

pika.exceptions.ChannelClosed: (406, "PRECONDITION_FAILED - parameters for queue 'foo' in vhost '/' not equivalent")

I checked that amqplib of NodeJS implements AMQP 0.9.1 and so does Pika. When I write the writer and reader both in Python, it works perfectly.

I am clueless why using different language libs for reader and writer should not work when the protocol version implemented by the libraries is same. 

Has anyone else faced this or can provider pointers? Is it some subtle protocol implementation issue?

Regards,
Ashish

Gabriele Santomaggio

unread,
Dec 18, 2015, 3:56:40 AM12/18/15
to rabbitmq-users
Hi,
 
I have a Web application in NodeJS which writes to RabbitMQ with durability setting false. I have a Python consumer (using Pika) which uses the same durability setting to read. Messages get written to the queue but when I try to read, I get this error -

pika.exceptions.ChannelClosed: (406, "PRECONDITION_FAILED - parameters for queue 'foo' in vhost '/' not equivalent")


PRECONDITION_FAILED = "When queue declaration attributes are different from those that the queue already". ( http://rubybunny.info/articles/queues.html )
You likely have two queue.declare ( one on Node.js and one on Python) that are using different attributes.

 
 
I checked that amqplib of NodeJS implements AMQP 0.9.1 and so does Pika. When I write the writer and reader both in Python, it works perfectly.

I am clueless why using different language libs for reader and writer should not work when the protocol version implemented by the libraries is same. 

Has anyone else faced this or can provider pointers? Is it some subtle protocol implementation issue?

Regards,
Ashish


-
Gabriele
Reply all
Reply to author
Forward
0 new messages