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

Lorenz Quack updated QPID-7569:
-------------------------------
    Attachment: 0002-QPID-7569-Java-Broker-Add-support-for-shared-subscri.patch

The attached patch 
0002-QPID-7569-Java-Broker-Add-support-for-shared-subscri.patch has a couple of 
issues that will need to be addressed:

* Related to the upcoming LinkRegistry
** Enforce uniqueness of combination of source container id, target container 
id, and link name on the broker side.  That would fix the issue with 
disallowing of creation of multiple shared subscribers from different 
connections using the same client id.
** When reattaching a link with null source, the source is currently recovered 
from the queue which is recovered from linkname, remote container id, and link 
capabilities.  This seems cumbersome and error prone.
** We do not persist state for the links and consumers. In fact the consumers 
and targets are recreated every time on attach. Before the lifecycle of 
consumer was derived from lifecycle of the source.
* General Refactoring
** Responsibilities unclear. current actors: Session_1_0, SendingLink_1_0, 
ExchangeDestination, VirtualHost, ...
** Threading is messy.  Testing for existing consumers, creating queues and 
bindings, ...
** Setting of response Attch properties happens in multiple places.
** QueueManagingVirtualHost#getSubscriptionQueue and 
QueueManagingVirtualHost#removeSubscriptionQueue are ugly but currently 
necessary to avoid race conditions
** Exception handling is not sensible as attach in some situation can result in 
connection close rather then attach followed by detach as required by amqp 
spec. In other cases, Exceptions are not thrown at all and errors are ignored.
** Currently subscription queue are removed explicitly by calling remove 
methods on detach. Potentially, special policy can be used to remove the queue 
automatically.

There are also some test failures that will be fixed before this will be 
commited

> [Java Broker] [AMQP 1.0] support for shared subscriptions
> ---------------------------------------------------------
>
>                 Key: QPID-7569
>                 URL: https://issues.apache.org/jira/browse/QPID-7569
>             Project: Qpid
>          Issue Type: New Feature
>          Components: Java Broker
>            Reporter: Robbie Gemmell
>             Fix For: qpid-java-7.0
>
>         Attachments: 
> 0002-QPID-7569-Java-Broker-Add-support-for-shared-subscri.patch
>
>
> The JMS 2.0 client (QPIDJMS-207) adds support for shared subscriptions, and 
> it would be good for the Java broker to support them.
> https://lists.apache.org/thread.html/70757f368d41d4b3537af92aa29f3e53e24da7e997fbdcc7d616830e@%3Cusers.qpid.apache.org%3E
> Much more detail is available on QPIDJMS-220



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