qpid-users mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Jim Spring <jmspr...@gmail.com>
Subject qpid-proton, outgoing window, and message status == PN_STATUS_ABORT
Date Sat, 20 Dec 2014 00:50:53 GMT
Greetings -

I've written a test application that all it does asynchronously send
messages to Azure EventHub using qpid proton.  At the quid-proton level, I
have set the outgoing window (for tracking messages sent) at various sizes,
but let's say 1000.  My sending makes sure that I keep this window
basically full.

At the AMQP level, Event Hub negotiates an
outgoing-window/remote-incoming-window with an initial value of 300.  And
is modified by flow frames.

When in my loop, I go back to check on whether messages have finished being
sent or not, I usually check:

     pn_messanger_buffered(messenger, tracker)

and

     pn_messenger_status(messenger, tracker)

For the first 300 messages that go through successfully,
pn_messenger_buffer returns false, as expected and pn_messenger_status
returns PN_STATUS_PENDING.  Once that 300 entity window is full,
pn_messenger_status starts returning PN_STATUS_ABORTED instead.

I would assume that qpid-proton would be handling this under the hood?  Am
I mistaken?

Is there a decent async example floating around on how to do something
similar?

Thanks
-jim spring

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