yahoo-eng-team team mailing list archive
-
yahoo-eng-team team
-
Mailing list archive
-
Message #22931
[Bug 1374497] Re: change in oslo.db "ping" handling is causing issues in projects that are not using transactions
** Changed in: oslo.db/juno
Status: Triaged => Fix Committed
** Changed in: oslo.db/juno
Status: Fix Committed => Fix Released
--
You received this bug notification because you are a member of Yahoo!
Engineering Team, which is subscribed to Keystone.
https://bugs.launchpad.net/bugs/1374497
Title:
change in oslo.db "ping" handling is causing issues in projects that
are not using transactions
Status in OpenStack Identity (Keystone):
Triaged
Status in Oslo Database library:
Fix Committed
Status in oslo.db juno series:
Fix Released
Bug description:
in https://review.openstack.org/#/c/106491/, the "ping" listener which
emits "SELECT 1" at connection start was moved from being a connection
pool "checkout" handler to a "transaction on begin" handler.
Apparently Keystone and possibly others are using the Session in
"autocommit" mode, despite that this is explicitly warned against in
SQLAlchemy's docs (see
http://docs.sqlalchemy.org/en/rel_0_9/orm/session.html#autocommit-
mode), and for these projects they are seeing failed connections not
transparently recovered (see
https://bugs.launchpad.net/keystone/+bug/1361378).
Alternatives include:
1. move the ping listener back to being a "checkout" handler
2. fix downstream projects to not use the session in autocommit mode
In all likelihood, the fix here should involve both. I have a longer
term plan to fix EngineFacade once and for all so that the correct use
patterns are explicit, but that still has to be blueprinted.
To manage notifications about this bug go to:
https://bugs.launchpad.net/keystone/+bug/1374497/+subscriptions