[rabbitmq-discuss] error: "Pipelining of requests forbidden" on C# client

Steven Taylor taylste at gmail.com
Thu Dec 16 06:02:41 GMT 2010


Hi Jerry,

you found the same pdf that I did.

I'm not knowingly using RPC continuation at this stage, unless using the
Subscription pattern falls under this category. Also, I am careful to use a
different channel for each subscription or basic channe that lives on the
same thread.

Would you like me to get in touch if I can repeat the error with a test
case?

-Steven

On 15 December 2010 16:56, Jerry Kuch <jerryk at vmware.com> wrote:

> Steven:  Is there any chance that the channel instance on which you're
> doing this work is being used by more than one thread?
>
> In the .NET client one expects this error when something tries to queue up
> more than one RPC continuation in the internal continuation queue at a time.
>  The Rabbit .NET client user guide talks about such thread safety issues:
>
>
> http://www.rabbitmq.com/releases/rabbitmq-dotnet-client/v1.5.0/rabbitmq-dotnet-client-1.5.0-user-guide.pdf
>
> in some detail in a couple of spots.
>
> The Rabbit Java client has similar restrictions.  With both the Java and
> .NET clients, it makes sense to structure your application so that a unique
> thread owns a given instance of a non-thread safe Rabbit client resource
> (e.g. Channels in the Java client, IModel in the .NET).
>
> Best regards,
> Jerry
>
> On Dec 15, 2010, at 8:28 AM, Steven Taylor wrote:
>
> Hi,
>
> Got this error: "Pipelining of requests forbidden"
>
> Found a reference in the documentation (see below).  As part of the "I
> assert queue exists" logic, I was (re-)declaring the exhange.  Is that
> wrong?
>
> Could it be a threading issue?
>
>
> http://www.rabbitmq.com/releases/rabbitmq-dotnet-client/v1.5.0/rabbitmq-dotnet-client-1.5.0-user-guide.pdf
>
> NotSupportedException
>
> s being thrown from a method in class RpcContinuationQueue
>
> complaining about
>
> "Pipelining of requests forbidden" (which occurs in situations where
>
> more than one AMQP RPC, such as
>
> ExchangeDeclare, is run simultaneously).
>
> Offending Line:
> BasicGetResult msg=ch.BasicGet(QueueNme,false);
>
> thanks,
> -Steven
> <ATT00001..txt>
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.rabbitmq.com/pipermail/rabbitmq-discuss/attachments/20101216/1a0511c8/attachment.htm>


More information about the rabbitmq-discuss mailing list