From a319c55616169e8b168dd8de2cd3f8926f65870d Mon Sep 17 00:00:00 2001 From: Joseph Schorr Date: Fri, 17 Feb 2017 12:22:21 -0500 Subject: [PATCH] Don't make permissions request in search for public callers They are unnecessary, so we can skip them --- endpoints/v1/index.py | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/endpoints/v1/index.py b/endpoints/v1/index.py index c9a4c72dd..f70b77f5c 100644 --- a/endpoints/v1/index.py +++ b/endpoints/v1/index.py @@ -312,10 +312,15 @@ def get_search(): def _conduct_repo_search(username, query, limit=25, page=1): """ Finds matching repositories. """ + only_public = username is None + def can_read(repo): if repo.is_public: return True + if only_public: + return False + return ReadRepositoryPermission(repo.namespace_user.username, repo.name).can() # Note: We put a max 5 page limit here. The Docker CLI doesn't seem to use the @@ -326,8 +331,6 @@ def _conduct_repo_search(username, query, limit=25, page=1): _MAX_PAGE_COUNT = 5 page = min(page, _MAX_PAGE_COUNT) - only_public = username is None - if query: matching_repos = model.get_sorted_matching_repositories(query, only_public, can_read, limit=limit*_MAX_PAGE_COUNT)