Alex Rudyy created QPID-7994:
--------------------------------
Summary: [Broker-J] [JMS2.0 support] 'null source lookup' ends up
in 'amqp:not-found' on attaching of unsubscribe links for global durable shared
subscriptions
Key: QPID-7994
URL: https://issues.apache.org/jira/browse/QPID-7994
Project: Qpid
Issue Type: Bug
Reporter: Alex Rudyy
As per [QPIDJMS-220|https://issues.apache.org/jira/browse/QPIDJMS-220]
{quote}
During unsubscribe, if a ClientID is set on the connection, a link named with
the subscription name would be used to perform a 'null source lookup' for the
subscription, as it is already for the existing non-shared durable
subscriptions (see earlier for behaviour outline). If a ClientID is not set,
the "|global" suffix will be added as shown previously..
{quote}
The current broker behaviour is not compliment with QPIDJMS-220. The broker
create a new link instead of looking for existing link having name
{{<subscription-name>|global}} as suggested by QPIDJMS-220. For the new link,
the local source is null. As result, 'not=found' error is reported.
The broker should try to find an existing link in the link registry using link
name only rather than name and a container ID as it does now. If link with
given name is found, it should be used to recover the source. The broker should
perform the search by link name only if {{SHARED}} capability is requested
either on connection or attach itself as suggested by QPIDJMS-220:
{quote}
Additionally, while using connections that dont have a ClientID set, i.e using
global shared susbcriptions, the link will have "shared" and "global" desired
capabilities added as hints to the server that this is an attempt to attach to
a 'global' shared subscription of the appropriate name derived from the link,
aiding the server should no link with this name be known by it for the
particular client container-id currently in use.
{quote}
--
This message was sent by Atlassian JIRA
(v6.4.14#64029)
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]