You are viewing a plain text version of this content. The canonical link for it is here.
Posted to proton@qpid.apache.org by Tomáš Šoltys <to...@gmail.com> on 2015/10/06 14:04:14 UTC

pn_link_receive fails when previous delivery was not settled

Hi,

I would like to receive messages without settling them. And do settle
later. Is it possible?

I have modified tests/tools/apps/c/reactor-recv.c as such so the receiver
does not call pn_delivery_settle(). Result is that pn_link_recv() will fail.

Is this expected behaviour?

Regards,
Tomas

Re: pn_link_receive fails when previous delivery was not settled

Posted by Bozo Dragojevic <bo...@digiverse.si>.
Hi Tomas,

On 6. 10. 15 14.04, Tomáš Šoltys wrote:
> Hi,
>
> I would like to receive messages without settling them. And do settle
> later. Is it possible?

You need to tell the link that you are done receiving and to go to the
next delivery by doing a pn_link_advance().

> I have modified tests/tools/apps/c/reactor-recv.c as such so the receiver
> does not call pn_delivery_settle().

pn_delivery_settle() does it automatically if it's settling the link
current delivery.

>  Result is that pn_link_recv() will fail.
>
> Is this expected behaviour?
>
>

You see pn_link_recv() fail as there are no more bytes for the link
current delivery.

Bozzo