yahoo-eng-team team mailing list archive
-
yahoo-eng-team team
-
Mailing list archive
-
Message #22685
[Bug 1374497] Re: change in oslo.db "ping" handling is causing issues in projects that are not using transactions
** Also affects: oslo.db/juno
Importance: High
Assignee: Mike Bayer (zzzeek)
Status: In Progress
** No longer affects: oslo.db/juno
** Also affects: oslo.db/juno
Importance: Undecided
Status: New
** Changed in: oslo.db/juno
Milestone: None => 1.0.2
--
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:
Triaged
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