
In Python 2, a file opened by a process was inherited by all of its children. Python 3 sets the O_CLOEXEC flag on the file descriptor by default so this doesn't happen. Because of the Python 2 behavior, our test code explicitly closes the file descriptor in one test, but we shouldn't be doing that since it wouldn't happen in a real usage scenario. Fortunately, it appears both cases work in a sane fashion anyway. With the explicit release removed from the child process, the py2 tests still run fine, and with that done the py3 tests no longer have a problem either. This is fortunate because if the py2 behavior allowed multiple processes to hold the lock at once it would obviously be a Bad Thing. :-) Change-Id: I133334dee068984b1309180c5338ac19d9934274
oslo.concurrency
oslo.concurrency library
- Free software: Apache license
- Documentation: http://docs.openstack.org/developer/oslo.concurrency
- Source: http://git.openstack.org/cgit/openstack/oslo.concurrency
- Bugs: http://bugs.launchpad.net/oslo
Description
Languages
Python
100%