[ 
https://issues.apache.org/jira/browse/QPID-6468?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Keith Wall updated QPID-6468:
-----------------------------
    Description: 
The Java Broker/Client historically has abused AMQP [0-8..0-91] basic.reject to 
release messages back to the Broker if the client no longer intends to deliver 
them to the application (for example, the closing of a consumer requires that 
messages that were optimistically prefetched now must be made available for 
delivery elsewhere and must be released to the Broker).  This was never the 
intended use for basic.reject.

QPID-6164 introduced (the Rabbit specific) AMQP extension basic.nack to allow 
for synchronous publishing.  We can make use of the same mechanism (as do 
Rabbit) for implementing message release on consuming side too. 

This would tidy up lots of ugly code around the DLQ support within the Java 
Broker, and allow the Qpid components to interop better with the Rabbit 
components.

Compatibility between older versions would need to be retained.




  was:
The Java Broker/Client historically has abused AMQP [0-8..0-91] basic.reject to 
release messages back to the Broker if the client no longer intends to deliver 
them to the application (for example, the closing of a consumer requires that 
messages that were optimistically prefetched now must be made available for 
delivery elsewhere and must be released to the Broker).  This was never the 
intended use for basic.reject.

QPID-6164 introduced (the Rabbit specific) AMQP extension basic.nack to allow 
for synchronous publishing.  We can make use of the same mechanism (as do 
Rabbit) for implementing message release on consuming side too. 

This would tidy up lots of ugly code around the DLQ support within the Java 
Broker, and allow the Qpid components to interop better with the Rabbit 
components.






> [0-8..0-91] Use basic.nack for releasing messages back to the Broker for 
> delivery elsewhere
> -------------------------------------------------------------------------------------------
>
>                 Key: QPID-6468
>                 URL: https://issues.apache.org/jira/browse/QPID-6468
>             Project: Qpid
>          Issue Type: Improvement
>          Components: Java Broker, Java Client
>            Reporter: Keith Wall
>
> The Java Broker/Client historically has abused AMQP [0-8..0-91] basic.reject 
> to release messages back to the Broker if the client no longer intends to 
> deliver them to the application (for example, the closing of a consumer 
> requires that messages that were optimistically prefetched now must be made 
> available for delivery elsewhere and must be released to the Broker).  This 
> was never the intended use for basic.reject.
> QPID-6164 introduced (the Rabbit specific) AMQP extension basic.nack to allow 
> for synchronous publishing.  We can make use of the same mechanism (as do 
> Rabbit) for implementing message release on consuming side too. 
> This would tidy up lots of ugly code around the DLQ support within the Java 
> Broker, and allow the Qpid components to interop better with the Rabbit 
> components.
> Compatibility between older versions would need to be retained.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

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

Reply via email to