On 5/10/20 12:44 PM, Krzysztof wrote:
So as I said, I'm sending Disposition frame "amqp:disposition:list"
with Accepted state "amqp:accepted:list". My assumption is that the broker
should reply with the same, once the message is
successfully acknowledged (aka removed from queue). Currently, AmqpNetLite
sends dispositions is a fire-and-forget manner (sth like qpid-jms does
with jms.forceAsyncAcks enabled) which isn't particularly safe, as the
client cannot be sure that its disposition was processed.
Since the disposition frame carries more than just the delivery state I
will have to guess based on the mention of Qpid JMS that you are doing
something similar and your receiver attached with the Receiver
Settlement Mode of first thereby indicating that your dispositions are
also sent with the settled flag set to true along with the indicated
accepted state. If that is the case than the broker would not send you
any response as you've settled thereby indicating that you have
forgotten about delivery and removed it from the unsettled tracking on
the receiver end.
You can refer to section 2.6.12 of the specification for a more in depth
discussion of how the exchange of dispositions might occur based on the
type of delivery semantics.
For more context -->
https://github.com/Azure/amqpnetlite/issues/367#issuecomment-517421722
On Sun, May 10, 2020 at 5:46 PM Timothy Bish <tabish...@gmail.com> wrote:
On 5/10/20 11:34 AM, Krzysztof wrote:
Hi,
I am working on the implementation of AcceptAsync for AmqpNetLite but I
wasn't able to make Artemis issue any response to disposition frame with
the accepted state. Is this actually a supported feature? Maybe I am
missing sth.
Best,
Krzysztof
What frames are you sending and what frames are you wanting to get back,
it isn't entirely clear from this little context, a bit more specificity
might help here.
--
Tim Bish
--
Tim Bish