Bug 962347

Summary: Docs: The link must be named for the durable subscription queues (JMS client)
Product: Red Hat Enterprise MRG Reporter: Petr Matousek <pematous>
Component: Messaging_Programming_ReferenceAssignee: Jared MORGAN <jmorgan>
Status: CLOSED CURRENTRELEASE QA Contact: Petr Matousek <pematous>
Severity: medium Docs Contact:
Priority: unspecified    
Version: DevelopmentCC: esammons, mmurray
Target Milestone: 3.0   
Target Release: ---   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2015-01-22 15:28:04 UTC Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:

Description Petr Matousek 2013-05-13 09:10:38 UTC
Description of problem:

There was a recent change in the JMS client. The link must now be named when creating a subscription queue.

This means that following the command reports an exception (newly on 0.22 packages):
# java -cp ${CLASSPATH} org.apache.qpid.example.Drain  "amq.topic/some_subject;{ link: { durable: true } }"
javax.jms.JMSException: Error registering consumer: org.apache.qpid.AMQException: You cannot mark a subscription queue as durable without providing a name for the link.

To avoid the client exception, it is necessary to name the link, ie 
# java -cp ${CLASSPATH} org.apache.qpid.example.Drain  "amq.topic/some_subject;{ link: { name: some_name, durable: true } }"

It may be possible that customer is using the syntax above (w/o the link name), so the customer shall be aware of this change. 
"19.1. The AMQP 0-10 mapping" may probably be a good place where to put this note.

I'm not sure if this shall be mentioned in the Messaging_Programming_Reference or in the Release notes, feel free to change the component if you find it more appropriate.

NOTE: this change is currently related only to JMS clients.

Version-Release number of selected component (if applicable):
Messaging Programming Reference - Revision 2.0.0-32

How reproducible:
100%

Steps to Reproduce:
1. # java -cp ${CLASSPATH} org.apache.qpid.example.Drain  "amq.topic/some_subject;{ link: { name: some_name, durable: true } }"
2. exception from the client
  
Actual results:
Undocumented JMS client behavior change.

Expected results:
The JMS client behavior change described in the doc.

Additional info:

Comment 1 Petr Matousek 2013-07-08 14:12:41 UTC
Correction: the 'name' must be omitted in the link to get that exception

Steps to Reproduce:
- 1. # java -cp ${CLASSPATH} org.apache.qpid.example.Drain  "amq.topic/some_subject;{ link: { name: some_name, durable: true } }"
+ 1. # java -cp ${CLASSPATH} org.apache.qpid.example.Drain  "amq.topic/some_subject;{ link: { durable: true } }"

Comment 3 Petr Matousek 2014-02-06 09:54:59 UTC
Content approved.

-> VERIFIED