Description of problem:
federation.FederationTests.test_pull_from_queue_recovery ................ fail
Error during test: Traceback (most recent call last):
File "<http://mrg2.lab.bos.redhat.com:8080/job/qpid-mrg-0.18-rhel6/ws/qpid/cpp/src/tests/python/commands/qpid-python-test",> line 340, in run
File "<http://mrg2.lab.bos.redhat.com:8080/job/qpid-mrg-0.18-rhel6/ws/qpid/cpp/src/tests/federation.py",> line 333, in test_pull_from_queue_recovery
self.fail("Failed to find expected message containing 'Message %d'" % i)
File "/usr/lib64/python2.6/unittest.py", line 316, in fail
raise self.failureException, msg
AssertionError: Failed to find expected message containing 'Message 6'
Version-Release number of selected component (if applicable):
Complete log is here:
Few times over 1 week.
I suspect I've found the problem. The test suffers from a timing issue due to its use of auto-delete queues for the federation link.
The test attempts to destroy then recreate the queue used as the source of the queue route. The problem with this is the queue is originally created as "auto-delete". This allows the queue to be cleaned up automatically when the federation session closes at the end of the test.
The problem is that this test deletes, then re-creates this queue while it is being used by the federation to test federation session recovery.
If that queue recreation is done while the federation session is detaching, then the fed session detach will attempt to delete the auto delete queue. This results in the recreated queue being deleted immediately, and the test fails.
I'll change the test to use a non-auto-delete queue, which should prevent the test queue from be deleted by the federation session teardown.