Files
deb-python-oslo.db/oslo_db
Mike Bayer 3e6a30c396 Add process guards + invalidate to the connection pool
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 ebbf23d649)
2015-03-16 16:30:08 +00:00
..