def _get_gc_expiration_policies(): policy_tuples_query = ( Namespace.select(Namespace.removed_tag_expiration_s) .distinct() .limit(100) # This sucks but it's the only way to limit memory .tuples() ) return [policy[0] for policy in policy_tuples_query]
def get_matching_user_namespaces(namespace_prefix, username, limit=10): namespace_user = get_namespace_user(username) namespace_user_id = namespace_user.id if namespace_user is not None else None namespace_search = prefix_search(Namespace.username, namespace_prefix) base_query = (Namespace.select().distinct().join( Repository, on=(Repository.namespace_user == Namespace.id)).join( RepositoryPermission, JOIN.LEFT_OUTER).where(namespace_search)) return _basequery.filter_to_repos_for_user(base_query, namespace_user_id).limit(limit)