No queue 'amq.rabbitmq-reply-to'

2,838 views
Skip to first unread message

barshan....@gmail.com

unread,
Nov 27, 2014, 12:34:10 AM11/27/14
to rabbitm...@googlegroups.com
I've just installed a RabbitMQ 3.4.2 server and using the RabbitMQ.Client 3.4.0 NuGet. I'm trying out RPC setting the ReplyTo property of the message to "amq.rabbitmq-reply-to" (as per the instructions on https://www.rabbitmq.com/direct-reply-to.html).

I'm getting the following error:

RabbitMQ.Client.Exceptions.OperationInterruptedException: The AMQP operation was interrupted: AMQP close-reason, initiated by Peer, code=404, text="NOT_FOUND - no queue 'amq.rabbitmq-reply-to' in vhost '/'", classId=60, methodId=20, cause=

Is there anything I need to set up on the server to enable reply-to?

Michael Klishin

unread,
Nov 27, 2014, 1:15:39 AM11/27/14
to barshan....@gmail.com, rabbitm...@googlegroups.com
 On 27 November 2014 at 08:34:11, barshan....@gmail.com (barshan....@gmail.com) wrote:
> I've just installed a RabbitMQ 3.4.2 server and using the RabbitMQ.Client
> 3.4.0 NuGet. I'm trying out RPC setting the ReplyTo property
> of the message to "amq.rabbitmq-reply-to" (as per the instructions
> on https://www.rabbitmq.com/direct-reply-to.html).
>
> I'm getting the following error:
>
> RabbitMQ.Client.Exceptions.OperationInterruptedException:
> The AMQP operation was interrupted: AMQP close-reason, initiated
> by Peer, code=404, text="NOT_FOUND - no queue 'amq.rabbitmq-reply-to'
> in vhost '/'", classId=60, methodId=20, cause=

It should be amq.rabbitmq.reply-to, not amq.rabbitmq-reply-to.
--
MK

Staff Software Engineer, Pivotal/RabbitMQ

barshan....@gmail.com

unread,
Nov 27, 2014, 10:49:35 PM11/27/14
to rabbitm...@googlegroups.com
Aw shucks, a typo...

 Okay I'm getting further now. With the correctly spelt reply-to queue name I now see the following error:

RabbitMQ.Client.Exceptions.AlreadyClosedException: Already closed: The AMQP operation was interrupted: AMQP close-reason, initiated by Peer, code=406, text="PRECONDITION_FAILED - fast reply consumer does not exist", classId=60, methodId=40, cause=

The consumer I'm using is a QueueingBasicConsumer and the error occurs when I call (pseudo-code) IModelInstance.BasicConsume("amq.rabbitmq.reply-to", true, consumer) 

Simon MacMullen

unread,
Nov 28, 2014, 5:47:07 AM11/28/14
to barshan....@gmail.com, rabbitm...@googlegroups.com
On 28/11/14 03:49, barshan....@gmail.com wrote:
> Okay I'm getting further now. With the correctly spelt reply-to queue
> name I now see the following error:
>
> RabbitMQ.Client.Exceptions.AlreadyClosedException: Already closed: The
> AMQP operation was interrupted: AMQP close-reason, initiated by Peer,
> code=406, text="PRECONDITION_FAILED - fast reply consumer does not
> exist", classId=60, methodId=40, cause=

That means you have tried to publish with the reply-to property set to
amq.rabbitmq-reply-to, but you haven't previously consumed from that
name so there's nowhere replies would go to.

Cheers, Simon

Alex Robson

unread,
Jan 28, 2015, 12:29:05 AM1/28/15
to rabbitm...@googlegroups.com, barshan....@gmail.com
On Rabbit 3.4.3, Erlang 16B03. If I first create a channel that consumes 'amq.rabbitmq.reply-to' and then attempt to publish a message with the reply_to property set to 'amq.rabbitmq.reply-to', I get the error mentioned above: '406 Precondition failed - fast reply consumer does not exist'.

The management console shows the channel that was created to consume from that psuedo-queue but not that it is in consume mode. I've read the feature doc a few times and cannot figure out what I might be doing that's causing this or if there's a defect in either the lib (amqplib for Node.js) preventing the consume from working correctly or if I have some other setting that's preventing me from correctly establishing a 'fast reply consumer'.

For what it's worth, if I fail to provide the noAck flag, it does crash with a 406 'reply consumer cannot acknowledge' so there's at least something getting through to the Rabbit server from this lib (otherwise I wouldn't get this particular error).

Thanks,
Alex

Simon MacMullen

unread,
Jan 28, 2015, 4:46:50 AM1/28/15
to Alex Robson, rabbitm...@googlegroups.com
Well, that should work. Just to be clear, you are definitely consuming
and then publishing on the *same* channel?

If so, can you post your code here and I'll have a look at it...

Cheers, Simon

On 28/01/2015 05:29, Alex Robson wrote:
> On Rabbit 3.4.3, Erlang 16B03. If I first create a channel that consumes
> 'amq.rabbitmq.reply-to' and then attempt to publish a message with the
> reply_to property set to 'amq.rabbitmq.reply-to', I get the error
> mentioned above: '406 Precondition failed - fast reply consumer does not
> exist'.
>
> The management console shows the channel that was created to consume
> from that psuedo-queue but not that it is in consume mode. I've read the
> feature doc a few times and cannot figure out what I might be doing
> that's causing this or if there's a defect in either the lib (amqplib
> for Node.js) preventing the consume from working correctly or if I have
> some other setting that's preventing me from correctly establishing a
> 'fast reply consumer'.
>
> For what it's worth, if I fail to provide the noAck flag, it does crash
> with a 406 'reply consumer cannot acknowledge' so there's at least
> something getting through to the Rabbit server from this lib (otherwise
> I wouldn't get this particular error).
>
> Thanks,
> Alex
>
> On Friday, November 28, 2014 at 4:47:07 AM UTC-6, Simon MacMullen wrote:
>
> On 28/11/14 03:49, barshan....@gmail.com <javascript:> wrote:
> > Okay I'm getting further now. With the correctly spelt reply-to
> queue
> > name I now see the following error:
> >
> > RabbitMQ.Client.Exceptions.AlreadyClosedException: Already
> closed: The
> > AMQP operation was interrupted: AMQP close-reason, initiated by
> Peer,
> > code=406, text="PRECONDITION_FAILED - fast reply consumer does not
> > exist", classId=60, methodId=40, cause=
>
> That means you have tried to publish with the reply-to property set to
> amq.rabbitmq-reply-to, but you haven't previously consumed from that
> name so there's nowhere replies would go to.
>
> Cheers, Simon
>
> --
> You received this message because you are subscribed to the Google
> Groups "rabbitmq-users" group.
> To unsubscribe from this group and stop receiving emails from it, send
> an email to rabbitmq-user...@googlegroups.com
> <mailto:rabbitmq-user...@googlegroups.com>.
> To post to this group, send email to rabbitm...@googlegroups.com
> <mailto:rabbitm...@googlegroups.com>.
> For more options, visit https://groups.google.com/d/optout.

Reply all
Reply to author
Forward
0 new messages