yahoo-eng-team team mailing list archive
-
yahoo-eng-team team
-
Mailing list archive
-
Message #05355
[Bug 1218133] Re: MultiprocessWSGITest.test_terminate_sigterm fails because the wait for workers to die is unreliable.
** Changed in: nova
Status: Fix Committed => Fix Released
--
You received this bug notification because you are a member of Yahoo!
Engineering Team, which is subscribed to OpenStack Compute (nova).
https://bugs.launchpad.net/bugs/1218133
Title:
MultiprocessWSGITest.test_terminate_sigterm fails because the wait for
workers to die is unreliable.
Status in OpenStack Compute (Nova):
Fix Released
Bug description:
The test run logged at http://logs.openstack.org/63/43863/1/gate/gate-
nova-python26/a49f89c/ appears to have failed because the waits at
http://git.openstack.org/cgit/openstack/nova/tree/nova/tests/integrated/test_multiprocess_api.py#n140
and
http://git.openstack.org/cgit/openstack/nova/tree/nova/tests/integrated/test_multiprocess_api.py#n163
are unreliable. Instead these tests should probably use something like
a waitpid with WNOHANG option poll loop where the worker processes are
polled rather than waited for. This will allow the tests to use a much
longer timeout as they will short circuit when all workers have
exited.
Additionally, the try except at
http://git.openstack.org/cgit/openstack/nova/tree/nova/tests/integrated/test_multiprocess_api.py#n106
may not work in all cases. If a timeout exception happens anywere else
in the test this code will not be run. A fix for this problem would be
to put the os.kill at
http://git.openstack.org/cgit/openstack/nova/tree/nova/tests/integrated/test_multiprocess_api.py#n112
in a test cleanup rather than a test teardown so that it runs all the
time and is forceful with the worker process killing. A bit bruteforce
but hopefully that results in more consistent tests.
To manage notifications about this bug go to:
https://bugs.launchpad.net/nova/+bug/1218133/+subscriptions