Mercurial > kallithea
changeset 4751:d8ad71e7b90d
usergroup: explicitly use subqueryload instead of relying on lazy=join
author | Mads Kiilerich <madski@unity3d.com> |
---|---|
date | Tue, 06 Jan 2015 00:54:36 +0100 |
parents | 3752cf4972a7 |
children | ad374c171656 |
files | kallithea/model/repo.py |
diffstat | 1 files changed, 6 insertions(+), 3 deletions(-) [+] |
line wrap: on
line diff
--- a/kallithea/model/repo.py Tue Jan 06 00:54:36 2015 +0100 +++ b/kallithea/model/repo.py Tue Jan 06 00:54:36 2015 +0100 @@ -32,8 +32,9 @@ import logging import traceback from datetime import datetime +from sqlalchemy.orm import subqueryload + from kallithea.lib.utils import make_ui - from kallithea.lib.vcs.backends import get_backend from kallithea.lib.compat import json from kallithea.lib.utils2 import LazyProperty, safe_str, safe_unicode, \ @@ -44,7 +45,7 @@ from kallithea.model import BaseModel from kallithea.model.db import Repository, UserRepoToPerm, UserGroupRepoToPerm, \ UserRepoGroupToPerm, UserGroupRepoGroupToPerm, User, Permission, \ - Statistics, UserGroup, Ui, RepoGroup, \ + Statistics, UserGroup, UserGroupMember, Ui, RepoGroup, \ Setting, RepositoryField from kallithea.lib import helpers as h @@ -146,7 +147,9 @@ def get_user_groups_js(self): user_groups = self.sa.query(UserGroup) \ - .filter(UserGroup.users_group_active == True).all() + .filter(UserGroup.users_group_active == True) \ + .options(subqueryload(UserGroup.members)) \ + .all() user_groups = UserGroupList(user_groups, perm_set=['usergroup.read', 'usergroup.write', 'usergroup.admin'])