BrokerDetails does not dictate what protocol version to use for the connection
------------------------------------------------------------------------------
Key: QPID-2162
URL: https://issues.apache.org/jira/browse/QPID-2162
Project: Qpid
Issue Type: Bug
Reporter: Martin Ritchie
Currently, we infer the default protocol version based on transport being VM or
a specified ClientProperty:
String amqpVersion =
System.getProperty((ClientProperties.AMQP_VERSION), "0-10");
_failoverPolicy = new FailoverPolicy(connectionURL, this);
BrokerDetails brokerDetails = _failoverPolicy.getCurrentBrokerDetails();
if (brokerDetails.getTransport().equals(BrokerDetails.VM) ||
"0-8".equals(amqpVersion) || "0-9".equals(amqpVersion))
Currently we are unable to use socket:// connections unless we set the recently
added AMQP_VERSIO N to 0-8/0-9.
However with the addition of 0-10 to the java broker we are unable to perform
0-10 InVM testing as VM will always result in a 0-8 connection.
I suggest that we update BrokerDetails should be updated to define and report
the type of ConnectionDelegate to use, this can be set via the URL, via the
qpid.amqp.version or via the type of BrokerDetails. So the protocol version
selected would be set in this order:
- BrokerDetails Transport type. Defined in code to be the current setings
VM=0-8, Socket=0-8, TCP=0-10
- BrokerDetails URL e.g. 'tcp://localhost:5672?protocol=0-8' to set the TCP
version to use 0-8
- qpid.amqp.version overrides all connection values to use this protocol
version
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.
---------------------------------------------------------------------
Apache Qpid - AMQP Messaging Implementation
Project: http://qpid.apache.org
Use/Interact: mailto:[email protected]