This repository has been archived on 2020-03-24. You can view files and clone it, but cannot push or open issues or pull requests.
quay/test
Joseph Schorr b5bb76cdea Optimize repository search by changing our lookup strategy
Previous to this change, repositories were looked up unfiltered in six different queries, and then filtered using the permissions model, which issued a query per repository found, making search incredibly slow. Instead, we now lookup a chunk of repositories unfiltered and then filter them via a single query to the database. By layering the filtering on top of the lookup, each as queries, we can minimize the number of queries necessary, without (at the same time) using a super expensive join.

Other changes:
- Remove the 5 page pre-lookup on V1 search and simply return that there is one more page available, until there isn't. While technically not correct, it is much more efficient, and no one should be using pagination with V1 search anyway.
- Remove the lookup for repos without entries in the RAC table. Instead, we now add a new RAC entry when the repository is created for *the day before*, with count 0, so that it is immediately searchable
- Remove lookup of results with a matching namespace; these aren't very relevant anyway, and it overly complicates sorting
2017-03-09 19:47:55 -05:00
..
data removed old templates 2017-02-28 16:51:44 -05:00
triggerjson Fix handling of gitlab web hooks when tagging 2017-02-16 15:40:37 -05:00
__init__.py Add some tests to verify we're not leaking anything to completely public users (we're not) 2013-11-06 17:09:22 -05:00
analytics.py Add some tests to make sure our docker API is properly respecting auth. 2013-11-07 17:10:57 -05:00
fulldbtest.sh Add configurable Docker host in full db tests 2016-12-01 15:45:08 -05:00
helpers.py Fix external auth returns for query_user calls 2016-12-07 14:28:42 -05:00
queue_threads.py Refactor queue locking to not use select for update 2015-11-03 11:32:28 -05:00
registry_tests.py Optimize repository search by changing our lookup strategy 2017-03-09 19:47:55 -05:00
specs.py Change permissions model so that non-admins do not get org-wide read 2016-08-04 16:47:28 -04:00
test_anon_checked.py Fix tests in response to breakage in #351 2015-08-17 16:26:20 -04:00
test_api_security.py Implement new create and manager trigger UI 2017-02-28 16:51:42 -05:00
test_api_usage.py Optimize repository search by changing our lookup strategy 2017-03-09 19:47:55 -05:00
test_auth.py rename auth.auth to auth.process 2016-09-29 15:24:57 -04:00
test_backfill_allocator.py Read the number of unscanned clair images from the block allocator 2017-02-21 19:13:51 -05:00
test_blobmodel.py Fix uncompressed size for blob store and add test 2016-03-29 14:16:56 -04:00
test_buildman.py Make the redis client use AsyncWrapper and coroutines 2016-11-18 15:59:14 -05:00
test_cloud_storage.py Add a chunk cleanup queue for async GC of empty chunks 2016-11-15 15:07:41 -05:00
test_digest_tools.py Prevent invalid tags on builds 2016-07-25 17:50:35 -07:00
test_dockerfileparse.py Fix Dockerfile parsing for unicode and add testing 2015-08-31 14:32:26 -04:00
test_endpoints.py Remove unicode before sending it to path parser 2017-02-22 13:21:12 -05:00
test_endtoend_auth.py fix(136521333): Handle None email_or_id in avatar code 2016-12-21 15:00:55 -05:00
test_external_jwt_authn.py Pull out JWT auth validation into validator class 2017-02-24 12:23:16 -05:00
test_filelike.py Add retry support to Swift 2016-07-26 09:56:00 -07:00
test_gc.py Garbage collection image+storage callback support 2016-12-22 14:27:42 -05:00
test_github.py Fix missed tests and revert conftest change (breaks docker build) 2017-01-30 17:28:25 -05:00
test_image_sharing.py Unionize the mega query - It needed more performance-based benefits 2015-10-09 14:45:05 -07:00
test_imagetree.py Improve the imagetree test. 2016-09-07 13:25:19 -04:00
test_keystone_auth.py Fix external auth returns for query_user calls 2016-12-07 14:28:42 -05:00
test_ldap.py fix(136521333): Handle None email_or_id in avatar code 2016-12-21 15:00:55 -05:00
test_license.py Change entitlement sorting to sort *valid* entitlements by reverse expiration time 2017-02-15 14:31:24 -05:00
test_manifests.py Fix verbs in manifestlist 2016-09-26 14:49:58 -04:00
test_metricqueue.py Fixes prometheus start metric 2016-09-30 13:09:03 -04:00
test_morecollections.py Change security notification code to use the new stream diff reporters 2016-12-20 12:50:19 -05:00
test_names.py Prevent invalid tags on builds 2016-07-25 17:50:35 -07:00
test_notifications.py Adding in cancel notifications 2016-11-30 14:38:34 -05:00
test_notificationworker.py Add an end-to-end test for the notifications queue 2016-09-21 15:15:35 -04:00
test_oauth_login.py Move OAuth login into its own endpoints module 2017-02-16 16:27:54 -05:00
test_permissions.py Accidental refactor, split out legacy.py into separate sumodules and update all call sites. 2015-07-17 11:56:15 -04:00
test_prepare_trigger.py Fix handling of gitlab web hooks when tagging 2017-02-16 15:40:37 -05:00
test_queries.py Making some refactors to make it easier to cancel the build at any time. 2016-10-24 15:59:33 -04:00
test_queue.py Change queue to use state-field for claiming items 2017-01-17 13:29:26 -05:00
test_queuefile.py Add retry support to Swift 2016-07-26 09:56:00 -07:00
test_registry_v2_auth.py registry auth tests: test more access types 2016-11-28 14:02:08 -05:00
test_repomodel.py Add a sitemap.txt for popular public repos 2016-06-17 14:34:20 -04:00
test_secscan.py workers.securityworker: simplify min id 2017-03-03 14:51:18 -05:00
test_ssl_util.py DNS name check got reversed; breaks wildcards 2017-01-29 11:51:37 -05:00
test_storageproxy.py Fix full database test script to not fail randomly 2016-11-30 18:24:08 -05:00
test_storagereplication.py Fix storage replication for CAS and add tests 2016-07-12 13:46:06 -04:00
test_streamlayerformat.py Refactor the util directory to use subpackages. 2015-08-03 16:04:19 -04:00
test_suconfig_api.py move ConfigProvider ctxmgr back to su tests 2017-02-14 14:36:36 -05:00
test_swift.py Add a chunk cleanup queue for async GC of empty chunks 2016-11-15 15:07:41 -05:00
test_trigger.py Fix pytests and enable parallel registry tests 2016-12-20 15:42:04 -05:00
test_util.py Change Docker Version tests to pytest 2017-02-22 15:45:06 -05:00
test_v1_endpoint_security.py Change permissions model so that non-admins do not get org-wide read 2016-08-04 16:47:28 -04:00
test_v2_endpoint_security.py Change permissions model so that non-admins do not get org-wide read 2016-08-04 16:47:28 -04:00
test_validation.py Basic labels support 2016-08-26 15:24:26 -04:00
test_visible_repos.py Add additional tests for repo visibility and further simplify the query for perf 2015-10-15 12:12:57 -04:00
testconfig.py Add end-to-end OIDC binding test 2017-02-16 16:27:53 -05:00
testlogs.py Accidental refactor, split out legacy.py into separate sumodules and update all call sites. 2015-07-17 11:56:15 -04:00