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

Reply via email to