----------------------------------------------------------- This is an automatically generated e-mail. To reply, visit: https://reviews.apache.org/r/29160/#review65523 -----------------------------------------------------------
The feature works, well done. However, when it works the user is hard pressed to tell that the connection went through. See note below. trunk/qpid/cpp/src/qpid/messaging/Connection.cpp <https://reviews.apache.org/r/29160/#comment108745> When this feature works the user is presented with an error and a warning, and then the retry silently succeeds. 2014-12-18 14:41:21 [System] error Caught exception in state: 3 with event: 1: Incorrect version: 1-0; expected 0-10 (/home/chug/git/qpid/qpid/cpp/src/qpid/client/Connector.cpp:89) 2014-12-18 14:41:21 [Client] warning Connection [127.0.0.1:57107-127.0.0.1:5672] closed A better user experience might give an indication that the failed connection is being retried: QPID_LOG(warning, "Caught protocol version connection error. Retrying connection with a different AMQP version..."); - Chug Rolke On Dec. 17, 2014, 6:20 p.m., Gordon Sim wrote: > > ----------------------------------------------------------- > This is an automatically generated e-mail. To reply, visit: > https://reviews.apache.org/r/29160/ > ----------------------------------------------------------- > > (Updated Dec. 17, 2014, 6:20 p.m.) > > > Review request for qpid, Alan Conway, Chug Rolke, and Justin Ross. > > > Bugs: QPID-6256 > https://issues.apache.org/jira/browse/QPID-6256 > > > Repository: qpid > > > Description > ------- > > * have a specific exception for signalling protocol mismatch up the stack > * use this to try alternative(s) in the event protocol is not explicitly > specified and first choice isn't supported by peer > > > Diffs > ----- > > trunk/qpid/cpp/include/qpid/messaging/exceptions.h 1646261 > trunk/qpid/cpp/src/qpid/Exception.h 1646261 > trunk/qpid/cpp/src/qpid/client/Connection.cpp 1646261 > trunk/qpid/cpp/src/qpid/client/ConnectionImpl.cpp 1646261 > trunk/qpid/cpp/src/qpid/client/Connector.h 1646261 > trunk/qpid/cpp/src/qpid/client/Connector.cpp 1646261 > trunk/qpid/cpp/src/qpid/client/RdmaConnector.cpp 1646261 > trunk/qpid/cpp/src/qpid/client/SslConnector.cpp 1646261 > trunk/qpid/cpp/src/qpid/client/TCPConnector.cpp 1646261 > trunk/qpid/cpp/src/qpid/client/amqp0_10/ConnectionImpl.cpp 1646261 > trunk/qpid/cpp/src/qpid/framing/ProtocolInitiation.h 1646261 > trunk/qpid/cpp/src/qpid/messaging/Connection.cpp 1646261 > trunk/qpid/cpp/src/qpid/messaging/ConnectionImpl.h 1646261 > trunk/qpid/cpp/src/qpid/messaging/ProtocolRegistry.cpp 1646261 > trunk/qpid/cpp/src/qpid/messaging/exceptions.cpp 1646261 > > Diff: https://reviews.apache.org/r/29160/diff/ > > > Testing > ------- > > * make test passes > * connects to qpidd when 0-10 has been disabled on broker > * connects to rabbitmq > * didn't connect to activemq 5.10 due to AMQ-5490, but that is fixed so > should work against trunk (to be verified) > > > Thanks, > > Gordon Sim > >