You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@qpid.apache.org by "Alex Rudyy (JIRA)" <ji...@apache.org> on 2019/07/26 16:08:00 UTC
[jira] [Updated] (QPID-8351) [Broker-J][AMQP 1.0] Message is left
on a queue when acquiring receiver settles non-transactional transfer
without specifying a terminal state
[ 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: dev-unsubscribe@qpid.apache.org
For additional commands, e-mail: dev-help@qpid.apache.org