qpid-users mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Jesse W. Hathaway" <...@chappy.com>
Subject Re: tmm1-amqp & QPID
Date Fri, 24 Apr 2009 15:06:17 GMT
> 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
View raw message