You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@qpid.apache.org by Hiram Chirino <hi...@hiramchirino.com> on 2012/07/02 17:32:16 UTC

[proton] can't parse a SwiftMQ 1.0 AMQP client protocol stream

Hi,

I've been trying to see if I could use the Proton java codecs to parse some
TCP dumps that I took of the SwiftMQ AMPQ 1.0 client when run a SwiftMQ
server and there seems to be a couple frames where it blows up on.  I was
hoping someone could give me an idea why.  If you guys want to checkout the
test case,  just my git branch from github:
https://github.com/chirino/proton

and then run maven in the base directory using:
mvn compile exec:java

-- 

**

*Hiram Chirino*

*Software Fellow | FuseSource Corp.*

*chirino@fusesource.com | fusesource.com*

*skype: hiramchirino | twitter: @hiramchirino<http://twitter.com/hiramchirino>
*

*blog: Hiram Chirino's Bit Mojo <http://hiramchirino.com/blog/>*

*
*

*
*

Re: [proton] can't parse a SwiftMQ 1.0 AMQP client protocol stream

Posted by Rob Godfrey <ro...@gmail.com>.
On 3 July 2012 21:07, Hiram Chirino <hi...@hiramchirino.com> wrote:

> Thanks.. works great now.
>
> I've started to work on adding AMQP 1.0 support to ActiveMQ's Apollo
> broker and I was hoping I could use QPIDs proton-j library to avoid
> duplicating the work of maintaining the AMQP conneciton/session/link state
> logic.  But it seems like there are still lots of un-implemented bits in
> proton-j :(  ... Any idea when that might flesh out a bit more.
>
>
The idea of proton is to provide the full necessary logic for anyone
wanting to incorporate AMQP 1.0, and we expect it to be full comprehensive
in terms of implementation.  The C implementation is general leading the
Java implementation by a few weeks, with a common test suite being
developed in Python to ensure complete compatibility between the APIs (at
some point soon we'll also start work on a JavaScript version).

There are aspects of the protocol which currently aren't accessible through
the Proton API, and we should be trying to identify those gaps as quickly
as possible and defining the necessary API enhancements.
All help/suggestions on this would be appreciated - it's very much our aim
to make Proton as easy to integrate for other messaging products as
possible.

I think our aim is to have a "preview" release of the C and Java versions
of Proton with a fairly good stab at the API in the next few weeks, with
rapid evolution following that as we close out any remaining missing
functionality.

Cheers,
Rob


> On Tue, Jul 3, 2012 at 9:30 AM, Rob Godfrey <ro...@gmail.com>wrote:
>
>> OK... I've made a change to the proton codec code to properly support
>> the list0 encoding, and this now decodes the SwiftMQ stream in the
>> test case.
>>
>> -- Rob
>>
>> On 3 July 2012 15:06, Rob Godfrey <ro...@gmail.com> wrote:
>> > OK, looks like this is a small bug in the proton codec where I haven't
>> > updated it to include the "empty list" optimised encoding that was
>> > introduced after I originally wrote the codec... and seems like the
>> > implementations we've been testing against don't use that optimised
>> > encoding...
>> >
>> > If I can drink enough coffee to stay awake this afternoon then I shall
>> > try to fix it...  Fixing the codec to generate better error messages
>> > is a task for another day :-)
>> >
>> > Apologies
>> >
>> > -- Rob
>> >
>> > On 2 July 2012 22:52, Rafael Schloming <ra...@redhat.com> wrote:
>> >> I took a quick look at this. I believe you're hitting a particularly
>> >> unfriendly issue with the way the java decoder works. Obviously it's
>> >> telling you a mandatory field is missing, but not which one. I know Rob
>> >> is planning on fixing that to be more friendly, however he is (or will
>> >> shortly be) on a plane back to Germany. If you run the same frames
>> >> through proton-c you might get more of a clue what's going on, and I
>> >> could definitely help out a bit more. Otherwise Rob should be back at
>> >> work late Tuesday/early Wednesday.
>> >>
>> >> --Rafael
>> >>
>> >> On Mon, 2012-07-02 at 11:32 -0400, Hiram Chirino wrote:
>> >>> Hi,
>> >>>
>> >>> I've been trying to see if I could use the Proton java codecs to
>> parse some
>> >>> TCP dumps that I took of the SwiftMQ AMPQ 1.0 client when run a
>> SwiftMQ
>> >>> server and there seems to be a couple frames where it blows up on.  I
>> was
>> >>> hoping someone could give me an idea why.  If you guys want to
>> checkout the
>> >>> test case,  just my git branch from github:
>> >>> https://github.com/chirino/proton
>> >>>
>> >>> and then run maven in the base directory using:
>> >>> mvn compile exec:java
>> >>>
>> >>
>> >>
>>
>
>
>
> --
>
> **
>
> *Hiram Chirino*
>
> *Software Fellow | FuseSource Corp.*
>
> *chirino@fusesource.com | fusesource.com*
>
> *skype: hiramchirino | twitter: @hiramchirino<http://twitter.com/hiramchirino>
> *
>
> *blog: Hiram Chirino's Bit Mojo <http://hiramchirino.com/blog/>*
>
> *
> *
>
> *
> *
>
>
>

Re: [proton] can't parse a SwiftMQ 1.0 AMQP client protocol stream

Posted by Andreas Mueller <am...@iit.de>.
Proton will be *the* state machine that implement exactly this logic. Rob & Rafi presented it at the AMQP workshop in Newcastle and it is awesome. I know they work hard to get this out and I don't think it will take that long until there are docs so that you can use it. I would just wait a bit and then integrate it into Apollo. 

I really appreciate that you are going to support AMQP 1.0 in Apollo. This will increase momentum a lot. 
 
-- 
Andreas Mueller
IIT Software GmbH, Bremen/Germany
http://www.swiftmq.com

Am 03.07.2012 um 21:07 schrieb Hiram Chirino:

> Thanks.. works great now.
> 
> I've started to work on adding AMQP 1.0 support to ActiveMQ's Apollo broker
> and I was hoping I could use QPIDs proton-j library to avoid duplicating
> the work of maintaining the AMQP conneciton/session/link state logic.  But
> it seems like there are still lots of un-implemented bits in proton-j :(
> ... Any idea when that might flesh out a bit more.
> 
> On Tue, Jul 3, 2012 at 9:30 AM, Rob Godfrey <ro...@gmail.com> wrote:
> 
>> OK... I've made a change to the proton codec code to properly support
>> the list0 encoding, and this now decodes the SwiftMQ stream in the
>> test case.
>> 
>> -- Rob
>> 
>> On 3 July 2012 15:06, Rob Godfrey <ro...@gmail.com> wrote:
>>> OK, looks like this is a small bug in the proton codec where I haven't
>>> updated it to include the "empty list" optimised encoding that was
>>> introduced after I originally wrote the codec... and seems like the
>>> implementations we've been testing against don't use that optimised
>>> encoding...
>>> 
>>> If I can drink enough coffee to stay awake this afternoon then I shall
>>> try to fix it...  Fixing the codec to generate better error messages
>>> is a task for another day :-)
>>> 
>>> Apologies
>>> 
>>> -- Rob
>>> 
>>> On 2 July 2012 22:52, Rafael Schloming <ra...@redhat.com> wrote:
>>>> I took a quick look at this. I believe you're hitting a particularly
>>>> unfriendly issue with the way the java decoder works. Obviously it's
>>>> telling you a mandatory field is missing, but not which one. I know Rob
>>>> is planning on fixing that to be more friendly, however he is (or will
>>>> shortly be) on a plane back to Germany. If you run the same frames
>>>> through proton-c you might get more of a clue what's going on, and I
>>>> could definitely help out a bit more. Otherwise Rob should be back at
>>>> work late Tuesday/early Wednesday.
>>>> 
>>>> --Rafael
>>>> 
>>>> On Mon, 2012-07-02 at 11:32 -0400, Hiram Chirino wrote:
>>>>> Hi,
>>>>> 
>>>>> I've been trying to see if I could use the Proton java codecs to parse
>> some
>>>>> TCP dumps that I took of the SwiftMQ AMPQ 1.0 client when run a SwiftMQ
>>>>> server and there seems to be a couple frames where it blows up on.  I
>> was
>>>>> hoping someone could give me an idea why.  If you guys want to
>> checkout the
>>>>> test case,  just my git branch from github:
>>>>> https://github.com/chirino/proton
>>>>> 
>>>>> and then run maven in the base directory using:
>>>>> mvn compile exec:java
>>>>> 
>>>> 
>>>> 
>> 
> 
> 
> 
> -- 
> 
> **
> 
> *Hiram Chirino*
> 
> *Software Fellow | FuseSource Corp.*
> 
> *chirino@fusesource.com | fusesource.com*
> 
> *skype: hiramchirino | twitter: @hiramchirino<http://twitter.com/hiramchirino>
> *
> 
> *blog: Hiram Chirino's Bit Mojo <http://hiramchirino.com/blog/>*
> 
> *
> *
> 
> *
> *






IIT Software GmbH
Fahrenheitstr. 1, D28359 Bremen, Germany
Tel: +49 421 2208-166, Fax: +49 421 2208-167
Amtsgericht Bremen, HRB 18624, Geschaeftsfuehrer: Andreas Mueller
Steuernummer: 71/572/04100, VAT: DE199945912


---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@qpid.apache.org
For additional commands, e-mail: dev-help@qpid.apache.org


Re: [proton] can't parse a SwiftMQ 1.0 AMQP client protocol stream

Posted by Hiram Chirino <hi...@hiramchirino.com>.
Thanks.. works great now.

I've started to work on adding AMQP 1.0 support to ActiveMQ's Apollo broker
and I was hoping I could use QPIDs proton-j library to avoid duplicating
the work of maintaining the AMQP conneciton/session/link state logic.  But
it seems like there are still lots of un-implemented bits in proton-j :(
 ... Any idea when that might flesh out a bit more.

On Tue, Jul 3, 2012 at 9:30 AM, Rob Godfrey <ro...@gmail.com> wrote:

> OK... I've made a change to the proton codec code to properly support
> the list0 encoding, and this now decodes the SwiftMQ stream in the
> test case.
>
> -- Rob
>
> On 3 July 2012 15:06, Rob Godfrey <ro...@gmail.com> wrote:
> > OK, looks like this is a small bug in the proton codec where I haven't
> > updated it to include the "empty list" optimised encoding that was
> > introduced after I originally wrote the codec... and seems like the
> > implementations we've been testing against don't use that optimised
> > encoding...
> >
> > If I can drink enough coffee to stay awake this afternoon then I shall
> > try to fix it...  Fixing the codec to generate better error messages
> > is a task for another day :-)
> >
> > Apologies
> >
> > -- Rob
> >
> > On 2 July 2012 22:52, Rafael Schloming <ra...@redhat.com> wrote:
> >> I took a quick look at this. I believe you're hitting a particularly
> >> unfriendly issue with the way the java decoder works. Obviously it's
> >> telling you a mandatory field is missing, but not which one. I know Rob
> >> is planning on fixing that to be more friendly, however he is (or will
> >> shortly be) on a plane back to Germany. If you run the same frames
> >> through proton-c you might get more of a clue what's going on, and I
> >> could definitely help out a bit more. Otherwise Rob should be back at
> >> work late Tuesday/early Wednesday.
> >>
> >> --Rafael
> >>
> >> On Mon, 2012-07-02 at 11:32 -0400, Hiram Chirino wrote:
> >>> Hi,
> >>>
> >>> I've been trying to see if I could use the Proton java codecs to parse
> some
> >>> TCP dumps that I took of the SwiftMQ AMPQ 1.0 client when run a SwiftMQ
> >>> server and there seems to be a couple frames where it blows up on.  I
> was
> >>> hoping someone could give me an idea why.  If you guys want to
> checkout the
> >>> test case,  just my git branch from github:
> >>> https://github.com/chirino/proton
> >>>
> >>> and then run maven in the base directory using:
> >>> mvn compile exec:java
> >>>
> >>
> >>
>



-- 

**

*Hiram Chirino*

*Software Fellow | FuseSource Corp.*

*chirino@fusesource.com | fusesource.com*

*skype: hiramchirino | twitter: @hiramchirino<http://twitter.com/hiramchirino>
*

*blog: Hiram Chirino's Bit Mojo <http://hiramchirino.com/blog/>*

*
*

*
*

Re: [proton] can't parse a SwiftMQ 1.0 AMQP client protocol stream

Posted by Rob Godfrey <ro...@gmail.com>.
OK... I've made a change to the proton codec code to properly support
the list0 encoding, and this now decodes the SwiftMQ stream in the
test case.

-- Rob

On 3 July 2012 15:06, Rob Godfrey <ro...@gmail.com> wrote:
> OK, looks like this is a small bug in the proton codec where I haven't
> updated it to include the "empty list" optimised encoding that was
> introduced after I originally wrote the codec... and seems like the
> implementations we've been testing against don't use that optimised
> encoding...
>
> If I can drink enough coffee to stay awake this afternoon then I shall
> try to fix it...  Fixing the codec to generate better error messages
> is a task for another day :-)
>
> Apologies
>
> -- Rob
>
> On 2 July 2012 22:52, Rafael Schloming <ra...@redhat.com> wrote:
>> I took a quick look at this. I believe you're hitting a particularly
>> unfriendly issue with the way the java decoder works. Obviously it's
>> telling you a mandatory field is missing, but not which one. I know Rob
>> is planning on fixing that to be more friendly, however he is (or will
>> shortly be) on a plane back to Germany. If you run the same frames
>> through proton-c you might get more of a clue what's going on, and I
>> could definitely help out a bit more. Otherwise Rob should be back at
>> work late Tuesday/early Wednesday.
>>
>> --Rafael
>>
>> On Mon, 2012-07-02 at 11:32 -0400, Hiram Chirino wrote:
>>> Hi,
>>>
>>> I've been trying to see if I could use the Proton java codecs to parse some
>>> TCP dumps that I took of the SwiftMQ AMPQ 1.0 client when run a SwiftMQ
>>> server and there seems to be a couple frames where it blows up on.  I was
>>> hoping someone could give me an idea why.  If you guys want to checkout the
>>> test case,  just my git branch from github:
>>> https://github.com/chirino/proton
>>>
>>> and then run maven in the base directory using:
>>> mvn compile exec:java
>>>
>>
>>

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@qpid.apache.org
For additional commands, e-mail: dev-help@qpid.apache.org


Re: [proton] can't parse a SwiftMQ 1.0 AMQP client protocol stream

Posted by Rob Godfrey <ro...@gmail.com>.
OK, looks like this is a small bug in the proton codec where I haven't
updated it to include the "empty list" optimised encoding that was
introduced after I originally wrote the codec... and seems like the
implementations we've been testing against don't use that optimised
encoding...

If I can drink enough coffee to stay awake this afternoon then I shall
try to fix it...  Fixing the codec to generate better error messages
is a task for another day :-)

Apologies

-- Rob

On 2 July 2012 22:52, Rafael Schloming <ra...@redhat.com> wrote:
> I took a quick look at this. I believe you're hitting a particularly
> unfriendly issue with the way the java decoder works. Obviously it's
> telling you a mandatory field is missing, but not which one. I know Rob
> is planning on fixing that to be more friendly, however he is (or will
> shortly be) on a plane back to Germany. If you run the same frames
> through proton-c you might get more of a clue what's going on, and I
> could definitely help out a bit more. Otherwise Rob should be back at
> work late Tuesday/early Wednesday.
>
> --Rafael
>
> On Mon, 2012-07-02 at 11:32 -0400, Hiram Chirino wrote:
>> Hi,
>>
>> I've been trying to see if I could use the Proton java codecs to parse some
>> TCP dumps that I took of the SwiftMQ AMPQ 1.0 client when run a SwiftMQ
>> server and there seems to be a couple frames where it blows up on.  I was
>> hoping someone could give me an idea why.  If you guys want to checkout the
>> test case,  just my git branch from github:
>> https://github.com/chirino/proton
>>
>> and then run maven in the base directory using:
>> mvn compile exec:java
>>
>
>

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@qpid.apache.org
For additional commands, e-mail: dev-help@qpid.apache.org


Re: [proton] can't parse a SwiftMQ 1.0 AMQP client protocol stream

Posted by Rafael Schloming <ra...@redhat.com>.
I took a quick look at this. I believe you're hitting a particularly
unfriendly issue with the way the java decoder works. Obviously it's
telling you a mandatory field is missing, but not which one. I know Rob
is planning on fixing that to be more friendly, however he is (or will
shortly be) on a plane back to Germany. If you run the same frames
through proton-c you might get more of a clue what's going on, and I
could definitely help out a bit more. Otherwise Rob should be back at
work late Tuesday/early Wednesday.

--Rafael

On Mon, 2012-07-02 at 11:32 -0400, Hiram Chirino wrote:
> Hi,
> 
> I've been trying to see if I could use the Proton java codecs to parse some
> TCP dumps that I took of the SwiftMQ AMPQ 1.0 client when run a SwiftMQ
> server and there seems to be a couple frames where it blows up on.  I was
> hoping someone could give me an idea why.  If you guys want to checkout the
> test case,  just my git branch from github:
> https://github.com/chirino/proton
> 
> and then run maven in the base directory using:
> mvn compile exec:java
> 



---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@qpid.apache.org
For additional commands, e-mail: dev-help@qpid.apache.org