summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRonald De Rose <ronald.de.rose@intel.com>2016-07-27 17:52:53 +0000
committerSteve Martinelli <s.martinelli@gmail.com>2016-07-27 18:07:36 +0000
commitf8c65c10dfe55787e9d5755f4986e8808aa6aa28 (patch)
tree96f713fa3b7483cb1743c9c0cfb96958c3546232
parentee74d157abfcae31a8496827e808157cf9611267 (diff)
downloadkeystone-f8c65c10dfe55787e9d5755f4986e8808aa6aa28.tar.gz
Change LocalUser sql model to eager loading
This patch changes the LocalUser sql model to eager loading. Subquery loading is eager loading as the parents are loaded, using one additional SQL statement, which issues a JOIN to a subquery of the original statement, for each collection requested. Closes-Bug: 1606426 Change-Id: I48965676ad6a796115caef5e90974cb617243223 (cherry-picked from: 4b9384dea36755c0dc0256f7392bf8c1e13f6632)
-rw-r--r--keystone/identity/backends/sql.py4
1 files changed, 3 insertions, 1 deletions
diff --git a/keystone/identity/backends/sql.py b/keystone/identity/backends/sql.py
index 5680a8a2b..0e5c784c5 100644
--- a/keystone/identity/backends/sql.py
+++ b/keystone/identity/backends/sql.py
@@ -118,8 +118,10 @@ class LocalUser(sql.ModelBase, sql.DictBase):
ondelete='CASCADE'), unique=True)
domain_id = sql.Column(sql.String(64), nullable=False)
name = sql.Column(sql.String(255), nullable=False)
- passwords = orm.relationship('Password', single_parent=True,
+ passwords = orm.relationship('Password',
+ single_parent=True,
cascade='all,delete-orphan',
+ lazy='subquery',
backref='local_user')
__table_args__ = (sql.UniqueConstraint('domain_id', 'name'), {})