Bug 52036 - Durable Subscription fails with ActiveMQ due to missing clientId field
Durable Subscription fails with ActiveMQ due to missing clientId field
Status: RESOLVED FIXED
Product: JMeter
Classification: Unclassified
Component: Main
2.5.1
All All
: P2 normal (vote)
: ---
Assigned To: JMeter issues mailing list
:
Depends on:
Blocks: 52034
  Show dependency tree
 
Reported: 2011-10-15 12:13 UTC by Philippe Mouawad
Modified: 2011-10-15 12:55 UTC (History)
1 user (show)



Attachments
Test Plan to reproduce issue (21.69 KB, application/octet-stream)
2011-10-15 12:13 UTC, Philippe Mouawad
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Philippe Mouawad 2011-10-15 12:13:57 UTC
Created attachment 27787 [details]
Test Plan to reproduce issue

Durable subscription fails with this exception with ActiveMQ:
2011/10/15 14:10:53 ERROR - jmeter.protocol.jms.sampler.SubscriberSampler: Could not initialise client javax.jms.JMSException: You cannot create a durable subscriber without specifying a unique clientID on a Connection
	at org.apache.activemq.ActiveMQConnection.checkClientIDWasManuallySpecified(ActiveMQConnection.java:1245)
	at org.apache.activemq.ActiveMQSession.createDurableSubscriber(ActiveMQSession.java:1272)
	at org.apache.activemq.ActiveMQSession.createDurableSubscriber(ActiveMQSession.java:1221)
	at org.apache.jmeter.protocol.jms.client.ReceiveSubscriber.createSubscriber(ReceiveSubscriber.java:169)
	at org.apache.jmeter.protocol.jms.client.ReceiveSubscriber.<init>(ReceiveSubscriber.java:94)
	at org.apache.jmeter.protocol.jms.sampler.SubscriberSampler.initReceiveClient(SubscriberSampler.java:114)
	at org.apache.jmeter.protocol.jms.sampler.SubscriberSampler.threadStarted(SubscriberSampler.java:264)
	at org.apache.jmeter.protocol.jms.sampler.SubscriberSampler.threadStarted(SubscriberSampler.java:295)
	at org.apache.jmeter.protocol.jms.sampler.SubscriberSampler.sample(SubscriberSampler.java:129)
	at org.apache.jmeter.protocol.jms.sampler.BaseJMSSampler.sample(BaseJMSSampler.java:79)
	at org.apache.jmeter.threads.JMeterThread.process_sampler(JMeterThread.java:413)
	at org.apache.jmeter.threads.JMeterThread.run(JMeterThread.java:297)
	at java.lang.Thread.run(Thread.java:680)



This seems right according to JMS specifications where clientId must be set:
http://download.oracle.com/javaee/1.3/jms/tutorial/1_3_1-fcs/doc/advanced.html#1024758

So I think we should add a field to specify clientId .

Note that it works with OpenJMS.
Comment 1 Philippe Mouawad 2011-10-15 12:55:18 UTC
Date: Sat Oct 15 12:54:04 2011
New Revision: 1183631

URL: http://svn.apache.org/viewvc?rev=1183631&view=rev
Log:
Bug 52036 - Durable Subscription fails with ActiveMQ due to missing clientId field

Modified:
   jakarta/jmeter/trunk/src/protocol/jms/org/apache/jmeter/protocol/jms/client/ReceiveSubscriber.java
   jakarta/jmeter/trunk/src/protocol/jms/org/apache/jmeter/protocol/jms/control/gui/JMSSubscriberGui.java
   jakarta/jmeter/trunk/src/protocol/jms/org/apache/jmeter/protocol/jms/sampler/SubscriberSampler.java
   jakarta/jmeter/trunk/xdocs/changes.xml
   jakarta/jmeter/trunk/xdocs/images/screenshots/jms/jms_sub.png
   jakarta/jmeter/trunk/xdocs/usermanual/component_reference.xml