diff options
author | Mike Bayer <mike_mp@zzzcomputing.com> | 2015-02-17 14:28:50 -0500 |
---|---|---|
committer | Davanum Srinivas (dims) <davanum@gmail.com> | 2015-03-16 16:30:08 +0000 |
commit | 3e6a30c396aa42ef0eccb5b3625af728d8d3f437 (patch) | |
tree | 7313389df2522bb5fd6e2954796746718b3cb240 /oslo_db/tests/old_import_api/sqlalchemy/test_utils.py | |
parent | 464a3d028fdfa3c5e4826f21c72f4c92c8e34235 (diff) | |
download | oslo-db-3e6a30c396aa42ef0eccb5b3625af728d8d3f437.tar.gz |
Add process guards + invalidate to the connection pool1.7.1
It's not safe for a database TCP connection to be
shared to a child process, as this is a file descriptor
which will maintain its state on both sides. Applications
such as Cinder which spin up multiprocessing subprocesses
at startup time are subject to race conditions as a result.
Instead of requiring that engines be explicitly prepared
within a child process, we can detect and accommodate
this situation in the connection pool itself, by tracking
the originating pid of a connection, and if it changes
on checkout, by invalidating.
Change-Id: If116f7b7140b3eba064d8147e5f637a05beb1cd8
(cherry picked from commit ebbf23d6490159f0c8f4f35a08fb4b80371cd080)
Diffstat (limited to 'oslo_db/tests/old_import_api/sqlalchemy/test_utils.py')
0 files changed, 0 insertions, 0 deletions