[ 
https://issues.apache.org/jira/browse/QPID-8345?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16890266#comment-16890266
 ] 

Rob Godfrey commented on QPID-8345:
-----------------------------------

[~robbie] yes - to be fair, when sending settled the sender has complete 
freedom to use any outcome it likes, and is under no obligation to inform the 
receiver of the message what that outcome would be (since the outcome is a 
sender only concern).  The "sensible" thing is for the broker to be sending 
messages as "ACCEPTED", and if the sender wishes to inform the receiver this 
could be enumerated on every message.  Although the spec does not say this, I 
would interpret the behaviour of the sender having default outcome X, and 
sending settled to be the same as saying the terminal state was X on every 
settled transfer... but since the receiver has no need to know the state the 
spec makes no mention / provision for this use case.

> [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 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}}



--
This message was sent by Atlassian JIRA
(v7.6.14#76016)

---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to