| Author |
Message |
|
| Guest |
Posted: Fri Feb 22, 2008 9:43 am |
|
|
|
Guest
|
Hi,
Yesterday I had avery weird failure on one of components communicating on AMQP. In the rabbit-log we have
=INFO REPORT==== 21-Feb-2008::15:20:09 === Syntax error collecting method content: {amqp,frame_error,none}
=INFO REPORT==== 21-Feb-2008::15:20:09 === Sending exception: Channel 4, Reason {amqp,syntax_error,'basic.publish'}
Has anybody seen this before? Any ideas what the 'real' problem is?
I'd like to add that we have been using RabbitMQ for more than 6 months and been very satisfied, so I suspect that it is us who is doing something we shouldn't and not a problem in RabbitMQ.
Regards,
Michael Arnoldus
Post recived from mailinglist |
|
|
| Back to top |
|
| tonyg |
Posted: Fri Feb 22, 2008 1:04 pm |
|
|
|
User
Joined: 07 Nov 2006
Posts: 199
|
Hi Michael,
Michael Arnoldus wrote:
> Yesterday I had avery weird failure on one of components communicating
> on AMQP. In the rabbit-log we have
> =INFO REPORT==== 21-Feb-2008::15:20:09 === Syntax error collecting
> method content: {amqp,frame_error,none}
> =INFO REPORT==== 21-Feb-2008::15:20:09 === Sending exception: Channel 4,
> Reason {amqp,syntax_error,'basic.publish'}
In the 1.2.0 codebase, this is caused by either
- a non-content-header frame arriving, when a content-header is
expected; or,
- a content-header frame arriving, as expected, but with a class ID
that doesn't match the class of the preceding method frame; or
- a non-content-body frame arriving, when a content-body is expected
A likely cause of this is sharing of a single Channel object between
multiple threads without sufficient mutual-exclusion. A publish, with
associated content, is ending up being interleaved with other frames on
the same channel. Could this, a Channel shared between threads, be
what's happening?
Just as an aside, that particular piece of code has been changed in our
CVS HEAD a little, so the precise error report will be a little
different for that case in future. The changes in that code are for
bringing the error reporting closer into line with the definitions of
frame-error, syntax-error and command-invalid in the specification.
Regards,
Tony
--
[][][] Tony Garnock-Jones | Mob: +44 (0)7905 974 211
[][] LShift Ltd | Tel: +44 (0)20 7729 7060
[] [] http://www.lshift.net/ | Email: tonyg@lshift.net
_______________________________________________
rabbitmq-discuss mailing list
rabbitmq-discuss@lists.rabbitmq.com
http://lists.rabbitmq.com/cgi-bin/mailman/listinfo/rabbitmq-discuss
Post recived from mailinglist |
|
|
| Back to top |
|
| 0x6e6562 |
Posted: Fri Feb 22, 2008 1:05 pm |
|
|
|
User
Joined: 12 Jul 2007
Posts: 250
|
Michael,
On 22 Feb 2008, at 09:43, Michael Arnoldus wrote:
Quote:
=INFO REPORT==== 21-Feb-2008::15:20:09 === Syntax error collecting method content: {amqp,frame_error,none}
=INFO REPORT==== 21-Feb-2008::15:20:09 === Sending exception: Channel 4, Reason {amqp,syntax_error,'basic.publish'}
Has anybody seen this before? Any ideas what the 'real' problem is?
I have seen this in a similar context when I've deleted the mnesia database and have tried to publish to an exchange without declaring it first, but the error atom you get is {amqp, not_found, 'basic_publish'}. I wouldn't have seen this if I wasn't continuously starting and stopping the broker and playing around with the OTP application state, so I don't know if this is of any relevance to your problem.
If you are able to reproduce this problem, it may help if you can describe the steps it takes to provoke the error so that we can reproduce it ourselves to try to diagnose it.
HTH,
Ben
Post recived from mailinglist |
|
|
| Back to top |
|
|
|
All times are GMT
|
|
You cannot post new topics in this forum You cannot reply to topics in this forum You cannot edit your posts in this forum You cannot delete your posts in this forum You cannot vote in polls in this forum You cannot attach files in this forum You cannot download files in this forum
|
|
|