qpid-users mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Jesse W. Hathaway" <...@chappy.com>
Subject tmm1-amqp & QPID
Date Thu, 23 Apr 2009 20:16:48 GMT
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


Mime
View raw message