Add an index for lookup by account to log entries
Also fixes the query to require one less join
This commit is contained in:
parent
d9b65b88e9
commit
0f46230493
4 changed files with 36 additions and 14 deletions
|
@ -1,12 +1,12 @@
|
|||
import json
|
||||
|
||||
from calendar import timegm
|
||||
from peewee import JOIN_LEFT_OUTER, SQL, fn
|
||||
from datetime import datetime, timedelta, date
|
||||
from peewee import JOIN_LEFT_OUTER, fn
|
||||
from datetime import datetime, timedelta
|
||||
from cachetools import lru_cache
|
||||
|
||||
from data.database import LogEntry, LogEntryKind, User, RepositoryActionCount, db
|
||||
from data.model import config
|
||||
from data.model import config, user, DataModelException
|
||||
|
||||
def _logs_query(selections, start_time, end_time, performer=None, repository=None, namespace=None,
|
||||
ignore=None):
|
||||
|
@ -22,7 +22,11 @@ def _logs_query(selections, start_time, end_time, performer=None, repository=Non
|
|||
joined = joined.where(LogEntry.performer == performer)
|
||||
|
||||
if namespace:
|
||||
joined = joined.join(User, on=(User.username == namespace))
|
||||
namespace_user = user.get_user_or_org(namespace)
|
||||
if namespace_user is None:
|
||||
raise DataModelException('Invalid namespace requested')
|
||||
|
||||
joined = joined.where(LogEntry.account == namespace_user.id)
|
||||
|
||||
if ignore:
|
||||
kind_map = get_log_entry_kinds()
|
||||
|
|
Reference in a new issue