the C++ broker uses the wrong exception type when clients try to modify the default exchange --------------------------------------------------------------------------------------------
Key: QPID-3443 URL: https://issues.apache.org/jira/browse/QPID-3443 Project: Qpid Issue Type: Bug Components: C++ Broker Affects Versions: 0.13 Reporter: Robbie Gemmell Fix For: Future Various test cases in AddressBasedDestinationTest are failing on the C++ test profiles, due to an exception being returned indicating the client tried to modify the default exchange. The exception is a NOT_ALLOWED, but the 0-10 spec says this should be met with an ILLEGAL_ARGUMENT exception. Eg: Testcase: testDestinationOnSend took 0.207 sec Caused an ERROR Error registering consumer: org.apache.qpid.AMQException: ch=0 id=0 ExecutionException(errorCode=NOT_ALLOWED, commandId=4, classCode=7, commandCode=4, fieldI ndex=0, description=not-allowed: Bind not allowed for default exchange (qpid/broker/Broker.cpp:920), errorInfo={}) [error code 530: not allowed] javax.jms.JMSException: Error registering consumer: org.apache.qpid.AMQException: ch=0 id=0 ExecutionException(errorCode=NOT_ALLOWED, commandId=4, classCode= 7, commandCode=4, fieldIndex=0, description=not-allowed: Bind not allowed for default exchange (qpid/broker/Broker.cpp:920), errorInfo={}) [error code 530: n ot allowed] at org.apache.qpid.client.AMQSession$4.execute(AMQSession.java:2057) at org.apache.qpid.client.AMQSession$4.execute(AMQSession.java:2000) at org.apache.qpid.client.AMQConnectionDelegate_0_10.executeRetrySupport(AMQConnectionDelegate_0_10.java:325) at org.apache.qpid.client.AMQConnection.executeRetrySupport(AMQConnection.java:570) at org.apache.qpid.client.failover.FailoverRetrySupport.execute(FailoverRetrySupport.java:102) at org.apache.qpid.client.AMQSession.createConsumerImpl(AMQSession.java:1998) at org.apache.qpid.client.AMQSession.createConsumer(AMQSession.java:971) at org.apache.qpid.test.client.destination.AddressBasedDestinationTest.testDestinationOnSend(AddressBasedDestinationTest.java:1119) at org.apache.qpid.test.utils.QpidBrokerTestCase.runBare(QpidBrokerTestCase.java:243) at org.apache.qpid.test.utils.QpidTestCase.run(QpidTestCase.java:128) Caused by: org.apache.qpid.AMQException: ch=0 id=0 ExecutionException(errorCode=NOT_ALLOWED, commandId=4, classCode=7, commandCode=4, fieldIndex=0, descripti on=not-allowed: Bind not allowed for default exchange (qpid/broker/Broker.cpp:920), errorInfo={}) [error code 530: not allowed] at org.apache.qpid.client.AMQSession_0_10.setCurrentException(AMQSession_0_10.java:1058) at org.apache.qpid.client.AMQSession_0_10.sync(AMQSession_0_10.java:1038) at org.apache.qpid.client.AMQSession_0_10.sendQueueBind(AMQSession_0_10.java:377) at org.apache.qpid.client.AMQSession$2.execute(AMQSession.java:678) at org.apache.qpid.client.failover.FailoverNoopSupport.execute(FailoverNoopSupport.java:67) at org.apache.qpid.client.AMQSession.bindQueue(AMQSession.java:674) at org.apache.qpid.client.AMQSession.registerConsumer(AMQSession.java:2854) at org.apache.qpid.client.AMQSession.access$500(AMQSession.java:120) at org.apache.qpid.client.AMQSession$4.execute(AMQSession.java:2034) -- This message is automatically generated by JIRA. For more information on JIRA, see: http://www.atlassian.com/software/jira --------------------------------------------------------------------- Apache Qpid - AMQP Messaging Implementation Project: http://qpid.apache.org Use/Interact: mailto:dev-subscr...@qpid.apache.org