yahoo-eng-team team mailing list archive
-
yahoo-eng-team team
-
Mailing list archive
-
Message #11344
[Bug 1290625] [NEW] keystone.contrib.revoke.backends.sql contains several glaring performance problems
Public bug reported:
* The id column is internal only, and yet, is varchar(64). This should
just be an auto incremented int.
* There are no indexes on anything.
* The comments claim that only DB2 has trouble with large deletes. This
is false. MySQL will hold gaps open on any indexes, including the
primary key, while deleting. This will effectively serialize access to
giant chunks of the table. If the ID were an auto-inc int, then this is
a non-issue because all writes will either be deletes or incrementing
the integer and thus not fall into the gaps. But then if we add indexes
where they should be, such as revoked_at, then that index will also have
gap locks. note that this is already acknowledged as this bug in tokens:
[ https://bugs.launchpad.net/keystone/+bug/1188378 ], which I believe
was just cargo-culted into this module.
** Affects: keystone
Importance: Undecided
Status: New
--
You received this bug notification because you are a member of Yahoo!
Engineering Team, which is subscribed to Keystone.
https://bugs.launchpad.net/bugs/1290625
Title:
keystone.contrib.revoke.backends.sql contains several glaring
performance problems
Status in OpenStack Identity (Keystone):
New
Bug description:
* The id column is internal only, and yet, is varchar(64). This should
just be an auto incremented int.
* There are no indexes on anything.
* The comments claim that only DB2 has trouble with large deletes.
This is false. MySQL will hold gaps open on any indexes, including the
primary key, while deleting. This will effectively serialize access to
giant chunks of the table. If the ID were an auto-inc int, then this
is a non-issue because all writes will either be deletes or
incrementing the integer and thus not fall into the gaps. But then if
we add indexes where they should be, such as revoked_at, then that
index will also have gap locks. note that this is already acknowledged
as this bug in tokens: [
https://bugs.launchpad.net/keystone/+bug/1188378 ], which I believe
was just cargo-culted into this module.
To manage notifications about this bug go to:
https://bugs.launchpad.net/keystone/+bug/1290625/+subscriptions
Follow ups
References