Description of problem: When using FailoverManager the FailoverManager::Command::execute() method only gets a Session passed to it. Having a simple way of getting at the connection in use would be valuable.
Added in r901247. There is a test in ClientSessionTest called testGetConnectionFromSession() that shows how the method can be tested,
Created attachment 389985 [details] The feature reproducer bz500779.cpp The isolated feature reproducer from the qpid boost unit test. Currently in the phase of waiting for packages with feature.
Created attachment 399045 [details] Updated feature reproducer bz500779.cpp
The feature has been implemented and it is working. Tested on RHEL4.8 and RHEL5.5 Alpha i386 / x86_64 on packages: [root@mrg-qe-02 bzs]# rpm -qa | grep qpid | sort -u python-qpid-0.7.917557-4.el5 qpid-cpp-client-0.7.916826-2.el5 qpid-cpp-client-devel-0.7.916826-2.el5 qpid-cpp-client-rdma-0.7.916826-2.el5 qpid-cpp-client-ssl-0.7.916826-2.el5 qpid-cpp-server-0.7.916826-2.el5 qpid-cpp-server-cluster-0.7.916826-2.el5 qpid-cpp-server-devel-0.7.916826-2.el5 qpid-cpp-server-rdma-0.7.916826-2.el5 qpid-cpp-server-ssl-0.7.916826-2.el5 qpid-cpp-server-store-0.7.916826-2.el5 qpid-cpp-server-xml-0.7.916826-2.el5 qpid-dotnet-0.4.738274-2.el5 qpid-java-client-0.7.918215-1.el5 qpid-java-common-0.7.918215-1.el5 qpid-tools-0.7.917557-4.el5 -> VERIFIED
Technical note added. If any revisions are required, please edit the "Technical Notes" field accordingly. All revisions will be proofread by the Engineering Content Services team. New Contents: Cause: When using FailoverManager the FailoverManager::Command::execute() method only gets a Session passed to it. Consequence: The connection for that session cannot easily be reached. Fix: Provide a new method SessionBase_0_10::getConnection Result: It is now easy to get the connection from a session, as demonstrated in src/tests/ClientSessionTest.cpp testGetConnectionFromSession
Technical note updated. If any revisions are required, please edit the "Technical Notes" field accordingly. All revisions will be proofread by the Engineering Content Services team. Diffed Contents: @@ -1,14 +1 @@ -Cause: +When using the 'FailoverManager', the "FailoverManager::Command::execute()" method only gets a session passed to it, thus, the connection for that session cannot easily be reached. With this update, a new method "SessionBase_0_10::getConnection" is provided and makes it easily possible to get the connection from a session.- When using FailoverManager the FailoverManager::Command::execute() - method only gets a Session passed to it. - - Consequence: - The connection for that session cannot easily be reached. - - Fix: - Provide a new method SessionBase_0_10::getConnection - - Result: - It is now easy to get the connection from a session, as - demonstrated in src/tests/ClientSessionTest.cpp - testGetConnectionFromSession
An advisory has been issued which should help the problem described in this bug report. This report is therefore being closed with a resolution of ERRATA. For more information on therefore solution and/or where to find the updated files, please follow the link below. You may reopen this bug report if the solution does not work for you. http://rhn.redhat.com/errata/RHSA-2010-0773.html