[
https://issues.apache.org/jira/browse/QPID-6389?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14320340#comment-14320340
]
Robbie Gemmell commented on QPID-6389:
--------------------------------------
I think I slowly managed to figure out where the broker does this,
Session::attach throws an Exception because it cant determine the type of
source, then Connection:doLinkRemoteOpen catches it and closes the link after
setting the exception details...not sure where abouts in there the non-null
source pops into the attach response though.
Possibly it should throw a different exception in the link-refusal case, that
way it could detach without the error (and perhaps set the null source if the
attach hasnt been output)?
> [C++ Broker] [AMQP 1.0] consumer attach with a null source can lead to
> unexpected error in resulting detach
> -----------------------------------------------------------------------------------------------------------
>
> Key: QPID-6389
> URL: https://issues.apache.org/jira/browse/QPID-6389
> Project: Qpid
> Issue Type: Bug
> Components: C++ Broker
> Affects Versions: 0.31
> Reporter: Robbie Gemmell
>
> Upon a client attaching a durable consumer link with a null source (not null
> address), qpidd responds with an attach containing a non-null source with
> null address, then sends a closing detach with an error indicating no source
> was specfied.
> From the spec, I would expect this to have resulted in either:
> * A successfull attach to an existing \[possibly detached\] link, with the
> response source indicating the related terminus details.
> * Returning an attach with a null source, and then a closing detach without
> an error, to indicate lack of a matching link.
> This behaviour seems to be described at
> http://docs.oasis-open.org/amqp/core/v1.0/os/amqp-core-transport-v1.0-os.html#doc-idp315568
> with Fig 2.33 in particular being related, albeit for a producing link.
> The JMS clients (old and new) currently do this to 'look up' durable
> subscriptions by attaching a link with a null source (only during unsubscribe
> currently, but in future also during subscriber open/creation verification as
> well), and monitoring the source value in the attach response from the broker.
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]