[
https://issues.apache.org/jira/browse/QPID-8351?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Alex Rudyy updated QPID-8351:
-----------------------------
Description:
Qpid Broker-J does not dequeue message when acquiring receiver settles
non-transactional transfer without specifying terminal state.
It seems, that message needs to be dequeued when receiver {{source}}
{{default-outcome}} is unset or set explicitly to {{accepted}}.
That would be compliment with the following AMQP spec requirements from section
3.5.3:
{quote}
default outcome for unsettled transfers
Indicates the outcome to be used for transfers that have not reached a terminal
state at the
receiver when the transfer is settled, including when the source is destroyed.
The value MUST be a valid outcome (e.g., released or rejected).
{quote}
The issue can be reproduced using steps below:
* publish message
* attach receiver link with {{"rcv-settle-mode"}} set to {{"first"}}
* send {{flow}} with at least one credit
* receive {{transfer}}
* send disposition with {{settled}} set to {{true}} and unset {{state}}
* close link
was:
Qpid Broker-J does not dequeue message when acquiring receiver settles
non-transactional transfer without specifying terminal state.
It seems, that message needs to be dequeued when receiver {{source}}
{{default-outcome}} is unset or set explicitly to {{accepted}}.
That would be compliment with the following AMQP spec requirements from section
3.5.3:
{quote}
default outcome for unsettled transfers
Indicates the outcome to be used for transfers that have not reached a terminal
state at the
receiver when the transfer is settled, including when the source is destroyed.
The value MUST be a valid outcome (e.g., released or rejected).
{quote}
The issue can be reproduced using setps below:
* publish message
* attach receiver link with {{"rcv-settle-mode"}} set to {{"first"}}
* send {{flow}} with at least one credit
* receive {{transfer}}
* send disposition with {{settled}} set to {{true}} and unset {{state}}
* close link
> [Broker-J][AMQP 1.0] Message is left on a queue when acquiring receiver
> settles non-transactional transfer without specifying a terminal state
> ----------------------------------------------------------------------------------------------------------------------------------------------
>
> Key: QPID-8351
> URL: https://issues.apache.org/jira/browse/QPID-8351
> Project: Qpid
> Issue Type: Bug
> Components: Broker-J
> Reporter: Alex Rudyy
> Priority: Major
> Fix For: qpid-java-broker-8.0.0
>
>
> Qpid Broker-J does not dequeue message when acquiring receiver settles
> non-transactional transfer without specifying terminal state.
> It seems, that message needs to be dequeued when receiver {{source}}
> {{default-outcome}} is unset or set explicitly to {{accepted}}.
> That would be compliment with the following AMQP spec requirements from
> section 3.5.3:
> {quote}
> default outcome for unsettled transfers
> Indicates the outcome to be used for transfers that have not reached a
> terminal state at the
> receiver when the transfer is settled, including when the source is
> destroyed. The value MUST be a valid outcome (e.g., released or rejected).
> {quote}
> The issue can be reproduced using steps below:
> * publish message
> * attach receiver link with {{"rcv-settle-mode"}} set to {{"first"}}
> * send {{flow}} with at least one credit
> * receive {{transfer}}
> * send disposition with {{settled}} set to {{true}} and unset {{state}}
> * close link
--
This message was sent by Atlassian JIRA
(v7.6.14#76016)
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]