qpid-users mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Marnie McCormack <marnie.mccorm...@googlemail.com>
Subject Re: tmm1-amqp & QPID
Date Fri, 24 Apr 2009 15:26:41 GMT
Hi Jesse,

The Java Broker supports 0-8 out of the box. I'd suspect you are seeing
differences in the Rabbit/Qpid implementations here.

I don't have a handle on the precise issue, but I'd think the field table is
likely to be involved. We'll take a look as soon as we can and come back to
you.

Regards,
Marnie

On Fri, Apr 24, 2009 at 4:06 PM, Jesse W. Hathaway <jwh@chappy.com> wrote:

> > Hi Jesse,
> >
> > Our Ruby clients are written in pure Ruby, the only C code is in the
> > library for SASL integration. I have not ever used JRuby - did you try
> > using our client with JRuby and run into problems? (Does anyone out
> > there have experience with JRuby and our client?)
>
> I have not tried using them with JRuby, once I do get the bindings working
> with Ruby MRI I will definitely test with JRuby and report back to the
> list.
>
> > Make sure your client and server are using the same AMQP version. The
> > Java server does 0-8, the same version that RabbitMQ uses. Our Ruby
> > client uses 0-10, the same version that the C++ based server uses. The
> > version information for clients and servers is here:
>
> Do I have to make any configuration changes for the java broker to
> support 0-8?
>
> thanks, Jesse
>
> > http://qpid.apache.org/getting-started.html
> >
> > I can't comment on tmm1-amqp.
> >
> > Jonathan
> >
> > Jesse W. Hathaway wrote:
> >> Rather than the supplied QPID Ruby bindings I would prefer to use a
> >> native Ruby implementation since then
> >> the bindings would work in JRuby and be portable to
> >> other AMQP implementations.
> >>
> >> However when trying [tmm1-amqp][1] with M4 and trunk I am seeing
> >> the below errors.
> >>
> >> tmm1-amqp supports version 0-8 of the AMQP protocol, which based on
> >> the QPID documentation the java broker should support the 0-8 spec.
> >>
> >> Are there any specific configuration changes which need to be made for
> >> the broker to support 0-8 clients?
> >>
> >> tmm1-amqp is tested against RabbitMQ, so the problem could lie in a
> difference
> >> between RabbitMQ and QPID.
> >>
> >> Any help in tracking down the cause of the problem would be appreciated.
> >>
> >> thanks, Jesse
> >>
> >> ## on the client
> >>
> >> java.nio.BufferUnderflowException (Hexdump: CE) in inspect
> >> java.lang.IllegalArgumentException (Hexdump: 00 00 00 0F 00 32 00 0A 00
> 00 03 74 77 6F 10 00 00 00 00 CE 01 00 03 00 00 00 1C 00 3C 00 14 00 00 03
> 74 77 6F 10 74 77 6F 2D 34 35 34 32 32 33 32 37 35 37 35 37 0A CE) in
> inspect
> >> java.lang.IllegalArgumentException (Hexdump: 00 00 00 0F 00 32 00 0A 00
> 00 03 74 77 6F 10 00 00 00 00 CE 01 00 03 00 00 00 1C 00 3C 00 14 00 00 03
> 74 77 6F 10 74 77 6F 2D 34 33 39 38 30 37 33 35 30 35 36 34 0A CE) in
> inspect
> >> java.lang.IllegalArgumentException (Hexdump: 00 00 00 0F 00 32 00 0A 00
> 00 03 74 77 6F 10 00 00 00 00 CE 01 00 03 00 00 00 1B 00 3C 00 14 00 00 03
> 74 77 6F 0F 74 77 6F 2D 38 35 31 31 38 39 31 36 34 31 34 0A CE) in inspect
> >>
> >> ## on the server M4
> >>
> >> 2009-04-23 15:02:08,748 ERROR [pool-1-thread-4]
> protocol.AMQPFastProtocolHandler (AMQPFastProtocolHandler.java:217) -
> Exception caught in/127.0.0.1:44681(guest), closing session explictly:
> org.apache.mina.filter.codec.ProtocolDecoderException:
> java.lang.IllegalArgumentException (Hexdump: 00 00 00 0F 00 32 00 0A 00 00
> 03 74 77 6F 10 00 00 00 00 CE 01 00 03 00 00 00 1C 00 3C 00 14 00 00 03 74
> 77 6F 10 74 77 6F 2D 33 37 33 33 30 35 39 31 34 36 38 37 0A CE)
> >> org.apache.mina.filter.codec.ProtocolDecoderException:
> java.lang.IllegalArgumentException (Hexdump: 00 00 00 0F 00 32 00 0A 00 00
> 03 74 77 6F 10 00 00 00 00 CE 01 00 03 00 00 00 1C 00 3C 00 14 00 00 03 74
> 77 6F 10 74 77 6F 2D 33 37 33 33 30 35 39 31 34 36 38 37 0A CE)
> >>   at
> org.apache.mina.filter.codec.QpidProtocolCodecFilter.messageReceived(QpidProtocolCodecFilter.java:158)
> >>   at
> org.apache.mina.common.support.AbstractIoFilterChain.callNextMessageReceived(AbstractIoFilterChain.java:362)
> >>   at
> org.apache.mina.common.support.AbstractIoFilterChain.access$1200(AbstractIoFilterChain.java:54)
> >>   at
> org.apache.mina.common.support.AbstractIoFilterChain$EntryImpl$1.messageReceived(AbstractIoFilterChain.java:800)
> >>   at org.apache.qpid.pool.Event$ReceivedEvent.process(Event.java:86)
> >>   at org.apache.qpid.pool.Job.processAll(Job.java:114)
> >>   at org.apache.qpid.pool.Job.run(Job.java:153)
> >>   at
> java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:650)
> >>   at
> java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:675)
> >>   at java.lang.Thread.run(Thread.java:595)
> >> Caused by: java.lang.IllegalArgumentException
> >>   at java.nio.Buffer.limit(Buffer.java:249)
> >>   at
> org.apache.mina.common.FixedSizeByteBufferAllocator$FixedSizeByteBuffer.limit(FixedSizeByteBufferAllocator.java:196)
> >>   at org.apache.qpid.framing.FieldTable.<init>(FieldTable.java:72)
> >>   at
> org.apache.qpid.framing.FieldTableFactory.newFieldTable(FieldTableFactory.java:34)
> >>   at
> org.apache.qpid.framing.EncodingUtils.readFieldTable(EncodingUtils.java:652)
> >>   at
> org.apache.qpid.framing.amqp_8_0.AMQMethodBody_8_0.readFieldTable(AMQMethodBody_8_0.java:95)
> >>   at
> org.apache.qpid.framing.amqp_8_0.BasicConsumeBodyImpl.<init>(BasicConsumeBodyImpl.java:81)
> >>   at
> org.apache.qpid.framing.amqp_8_0.BasicConsumeBodyImpl$1.newInstance(BasicConsumeBodyImpl.java:47)
> >>   at
> org.apache.qpid.framing.amqp_8_0.MethodRegistry_8_0.convertToBody(MethodRegistry_8_0.java:298)
> >>   at
> org.apache.qpid.framing.AMQMethodBodyFactory.createBody(AMQMethodBodyFactory.java:43)
> >>   at org.apache.qpid.framing.AMQFrame.<init>(AMQFrame.java:42)
> >>   at
> org.apache.qpid.framing.AMQDataBlockDecoder.createAndPopulateFrame(AMQDataBlockDecoder.java:104)
> >>   at
> org.apache.qpid.framing.AMQDataBlockDecoder.decode(AMQDataBlockDecoder.java:118)
> >>   at
> org.apache.qpid.codec.AMQDecoder.doDecodeDataBlock(AMQDecoder.java:133)
> >>   at org.apache.qpid.codec.AMQDecoder.doDecode(AMQDecoder.java:100)
> >>   at org.apache.qpid.codec.AMQDecoder.decode(AMQDecoder.java:208)
> >>   at
> org.apache.mina.filter.codec.QpidProtocolCodecFilter.messageReceived(QpidProtocolCodecFilter.java:147)
> >>   ... 9 more
> >>
> >> ## on the server trunk
> >>
> >> 2009-04-23 15:00:12,631 ERROR [pool-1-thread-5]
> protocol.AMQPFastProtocolHandler (AMQPFastProtocolHandler.java:217) -
> Exception caught in/127.0.0.1:52805(guest), closing session explictly:
> org.apache.mina.filter.codec.ProtocolDecoderException:
> java.nio.BufferUnderflowException (Hexdump: CE)
> >> org.apache.mina.filter.codec.ProtocolDecoderException:
> java.nio.BufferUnderflowException (Hexdump: CE)
> >>   at
> org.apache.mina.filter.codec.QpidProtocolCodecFilter.messageReceived(QpidProtocolCodecFilter.java:158)
> >>   at
> org.apache.mina.common.support.AbstractIoFilterChain.callNextMessageReceived(AbstractIoFilterChain.java:362)
> >>   at
> org.apache.mina.common.support.AbstractIoFilterChain.access$1200(AbstractIoFilterChain.java:54)
> >>   at
> org.apache.mina.common.support.AbstractIoFilterChain$EntryImpl$1.messageReceived(AbstractIoFilterChain.java:800)
> >>   at org.apache.qpid.pool.Event$ReceivedEvent.process(Event.java:86)
> >>   at org.apache.qpid.pool.Job.processAll(Job.java:114)
> >>   at org.apache.qpid.pool.Job.run(Job.java:153)
> >>   at
> java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:650)
> >>   at
> java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:675)
> >>   at java.lang.Thread.run(Thread.java:595)
> >> Caused by: java.nio.BufferUnderflowException
> >>   at java.nio.Buffer.nextGetIndex(Buffer.java:404)
> >>   at java.nio.HeapByteBuffer.getInt(HeapByteBuffer.java:336)
> >>   at
> org.apache.mina.common.FixedSizeByteBufferAllocator$FixedSizeByteBuffer.getInt(FixedSizeByteBufferAllocator.java:357)
> >>   at
> org.apache.mina.common.ByteBuffer.getUnsignedInt(ByteBuffer.java:725)
> >>   at
> org.apache.qpid.framing.EncodingUtils.readFieldTable(EncodingUtils.java:645)
> >>   at
> org.apache.qpid.framing.amqp_8_0.AMQMethodBody_8_0.readFieldTable(AMQMethodBody_8_0.java:95)
> >>   at
> org.apache.qpid.framing.amqp_8_0.BasicConsumeBodyImpl.<init>(BasicConsumeBodyImpl.java:81)
> >>   at
> org.apache.qpid.framing.amqp_8_0.BasicConsumeBodyImpl$1.newInstance(BasicConsumeBodyImpl.java:47)
> >>   at
> org.apache.qpid.framing.amqp_8_0.MethodRegistry_8_0.convertToBody(MethodRegistry_8_0.java:298)
> >>   at
> org.apache.qpid.framing.AMQMethodBodyFactory.createBody(AMQMethodBodyFactory.java:43)
> >>   at org.apache.qpid.framing.AMQFrame.<init>(AMQFrame.java:42)
> >>   at
> org.apache.qpid.framing.AMQDataBlockDecoder.createAndPopulateFrame(AMQDataBlockDecoder.java:104)
> >>   at
> org.apache.qpid.framing.AMQDataBlockDecoder.decode(AMQDataBlockDecoder.java:118)
> >>   at
> org.apache.qpid.codec.AMQDecoder.doDecodeDataBlock(AMQDecoder.java:133)
> >>   at org.apache.qpid.codec.AMQDecoder.doDecode(AMQDecoder.java:100)
> >>   at org.apache.qpid.codec.AMQDecoder.decode(AMQDecoder.java:208)
> >>   at
> org.apache.mina.filter.codec.QpidProtocolCodecFilter.messageReceived(QpidProtocolCodecFilter.java:147)
> >>   ... 9 more
> >>
> >> [1]: http://github.com/tmm1/amqp/tree/master
> >>
> >> ---------------------------------------------------------------------
> >> Apache Qpid - AMQP Messaging Implementation
> >> Project:      http://qpid.apache.org
> >> Use/Interact: mailto:users-subscribe@qpid.apache.org
> >>
> >>
> >>
> >
> >
> > ---------------------------------------------------------------------
> > Apache Qpid - AMQP Messaging Implementation
> > Project:      http://qpid.apache.org
> > Use/Interact: mailto:users-subscribe@qpid.apache.org
> >
>
> --
> Jesse W. Hathaway
> Senior Systems Administrator
> Chapdelaine & Co.
> (w) 312-704-2000
> (c) 917-418-8423
>
> ---------------------------------------------------------------------
> Apache Qpid - AMQP Messaging Implementation
> Project:      http://qpid.apache.org
> Use/Interact: mailto:users-subscribe@qpid.apache.org
>
>

Mime
  • Unnamed multipart/alternative (inline, None, 0 bytes)
View raw message