[
https://issues.apache.org/jira/browse/QPID-8345?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Alex Rudyy updated QPID-8345:
-----------------------------
Description:
When receiving link desired {{snd-settle-mode}} is set to {{settled}} and
transactions are not used for message receiving, the broker sending link sends
the messages pre-settled.
However, the consumed messages are left in acquired state on the queue after
sending them to consumer. Such messages stack in {{acquired}} state until
broker is restarted. After the restart, the persistent message became available
for consumption again.
The broker should remove sent pre-settled messages from the queue queue. If
consumer default outcome is set explicitly to other value than {{accepted}} or
null, than the transfer state should be set to {{accepted}} in order to notify
the receiver about sender behaviour.
was:
When receiving link desired {{snd-settle-mode}} is set to {{settled}} and
transactions are not used for message receiving, the broker sending link sends
the messages pre-settled.
However, the consumed messages are left in acquired state on the queue after
sending them to consumer. Such messages stack in {{acquired}} state until
broker is restarted. After the restart, the persistent message became available
for consumption again.
The broker currently does not apply {{default-outcome}} set on receiving link
(indicating the outcome to be used for transfers that have not reached a
terminal state at the
receiver when the transfer is settled [see section 3.5.3 Source]).
Based on value of {{default-outcome}} set on consumer link source, the broker
should apply the following:
* {{accepted}} or {{null}}; remove message from the queue
* {{rejected}}, {{released}}, {{modified}}; release message
* any other outcome; close link with an error {{not-implemented}}
* not valid outcome (for example, {{received}}); close link with an error
{{invalid-field}}
> [Broker-J][AMQP 1.0] Consumed messages are left in acquired state on a queue
> when receiver’s desired snd-settle-mode is set to settled and transactions
> are not used for message receiving
> ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
>
> Key: QPID-8345
> URL: https://issues.apache.org/jira/browse/QPID-8345
> Project: Qpid
> Issue Type: Bug
> Components: Broker-J
> Affects Versions: qpid-java-broker-7.0.0, qpid-java-broker-7.0.1,
> qpid-java-broker-7.1.0, qpid-java-broker-7.0.4, qpid-java-broker-7.0.5,
> qpid-java-broker-7.0.6, qpid-java-broker-7.0.7, qpid-java-broker-7.1.1,
> qpid-java-broker-7.1.2, qpid-java-broker-7.0.8, qpid-java-broker-7.1.3,
> qpid-java-broker-7.1.4
> Reporter: Alex Rudyy
> Priority: Major
> Fix For: qpid-java-broker-7.1.5
>
>
> When receiving link desired {{snd-settle-mode}} is set to {{settled}} and
> transactions are not used for message receiving, the broker sending link
> sends the messages pre-settled.
> However, the consumed messages are left in acquired state on the queue after
> sending them to consumer. Such messages stack in {{acquired}} state until
> broker is restarted. After the restart, the persistent message became
> available for consumption again.
> The broker should remove sent pre-settled messages from the queue queue. If
> consumer default outcome is set explicitly to other value than {{accepted}}
> or null, than the transfer state should be set to {{accepted}} in order to
> notify the receiver about sender behaviour.
--
This message was sent by Atlassian JIRA
(v7.6.14#76016)
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]