Joseph Schorr
fe45797490
Optimize the list active tags query
...
Some customers are hitting this endpoint rapidly for repositories with many, many tags. This change drops the unnecessary joins, which should reduce database load somewhat.
2019-01-14 13:34:25 -05:00
Joseph Schorr
defd4b3b20
Merge pull request #3327 from quay/remove-charset
...
Remove the charset from the content type for manifests
2019-01-12 16:15:31 -05:00
Joseph Schorr
5b4d39daa4
Remove the charset from the content type for manifests
2019-01-12 16:06:11 -05:00
Joseph Schorr
a67d57b91c
Merge pull request #3326 from quay/remove-default-parse
...
Skip parsing the manifest where applicable
2019-01-12 13:42:26 -05:00
Joseph Schorr
e78b5c5516
Add an additional short circuit to avoid parsing the manifest when not necessary for older Docker clients
...
We also add tests for this case
2019-01-11 16:37:23 -05:00
Joseph Schorr
7f068c3fc3
Skip parsing the manifest where applicable
...
Instead of always parsing (like we did previously), we now only parse the manifest if conversion is necessary. This should save significant CPU.
2019-01-11 15:24:21 -05:00
Joseph Schorr
396ce21020
Merge pull request #3325 from quay/four-byte-utf8-fix
...
Fix handling of four byte utf8 manifests
2019-01-11 11:31:08 -05:00
Joseph Schorr
eb9ca8e8a8
Fix handling of four byte utf8 manifests
...
- Adds the charset: utf-8 to all the manifest responses
- Makes sure we connect to MySQL in utf8mb4 mode, to ensure we can properly read and write 4-byte utf8 strings
- Adds tests for all of the above
2019-01-10 16:34:56 -05:00
Joseph Schorr
62609fce3e
Merge pull request #3324 from quay/v1-pull-npe-fix
...
Fix V1 tag endpoint to properly return the fallback image or a 404 for tags without legacy images
2019-01-10 14:38:45 -05:00
Joseph Schorr
b1dd053b02
Fix an NPE when trying to pull a manifest without a legacy image via V1
2019-01-10 13:59:35 -05:00
Joseph Schorr
d9da838df1
Merge pull request #3322 from quay/further-unicode-fixes
...
Further fixes for unicode handling in manifests
2019-01-10 13:09:12 -05:00
Joseph Schorr
171c7e5238
Further fixes for unicode handling in manifests
...
We were occasionally trying to compute schema 2 version 1 signatures on the *unicode* representation, which was failing the signature check. This PR adds a new wrapper type called `Bytes`, which all manifests must take in, and which handles the unicodes vs encoded utf-8 stuff in a central location. This PR also adds a test for the manifest that was breaking in production.
2019-01-09 15:14:41 -05:00
Joseph Schorr
05fa2bcbe0
Merge pull request #3321 from quay/temp-disable-validate
...
Disable verification of schemas temporarily while we determine why some older schemas don't validate
2019-01-08 14:27:44 -05:00
Joseph Schorr
b7b64d84d3
Disable verification of schemas temporarily while we determine why some older schemas don't validate
2019-01-08 14:25:35 -05:00
Joseph Schorr
a156c91962
Merge pull request #3318 from quay/prod-fire-cleanup
...
Prod fire cleanup fixes
2019-01-07 14:11:42 -05:00
Joseph Schorr
636f65cb81
Disable flaky test on MySQL
2019-01-04 16:37:02 -05:00
Joseph Schorr
c510759df3
Remove the foreign key constraint from the kind field on the logentry3 table
2019-01-04 13:35:14 -05:00
Joseph Schorr
e309508776
Change lookup of blobs to not use a subquery, which is murder on MySQL
2019-01-03 15:41:21 -05:00
Joseph Schorr
cdb49dbfd3
Add LogEntry3 table without the extra indexes and switch to writing to it
2019-01-03 13:50:43 -05:00
Joseph Schorr
b6db002729
Fix references to LogEntry model used and add support for a maximum page of results on the logs API
2019-01-02 16:04:15 -05:00
Joseph Schorr
204eb74c4f
Put aggregated log query and log exports behind feature flags
2019-01-02 16:04:15 -05:00
Joseph Schorr
4ba4d9141b
Put user last accessed updating behind a feature flag
2019-01-02 16:04:15 -05:00
Joseph Schorr
a6b5b4d6e3
Switch to writing logs to LogEntry2 table
2019-01-02 16:04:15 -05:00
Joseph Schorr
58d7dd07b9
Revert the changes to drop LogEntry2 table definition
2019-01-02 13:29:35 -05:00
Joseph Schorr
442312402f
Merge pull request #3299 from quay/joseph.schorr/QUAY-1233/batch-logs-download
...
Batch download of logs
2018-12-19 15:38:22 -05:00
Joseph Schorr
0d20ab6042
Merge pull request #3313 from quay/fix-unicode-error
...
Make sure to decode manifests into utf-8 when necessary
2018-12-19 14:08:05 -05:00
Joseph Schorr
a898d31016
Merge pull request #3314 from quay/joseph.schorr/QUAY-1268/remove-sitemap
...
Remove unusable sitemap endpoint
2018-12-19 13:27:51 -05:00
Joseph Schorr
9190c046c7
Remove unusable sitemap endpoint
...
It calls a data model method which is extremely slow and heavy, and it isn't even used anyway
2018-12-18 16:37:09 -05:00
Joseph Schorr
8a212728a3
Implement a worker for batch exporting of usage logs
...
This will allow customers to request their usage logs for a repository or an entire namespace, and we can export the logs in a manner that doesn't absolutely destroy the database, with every step along the way timed.
2018-12-18 15:33:03 -05:00
Joseph Schorr
b8d2e1be9c
Remove infinite scroll from logs page and fix multiple loading bug
...
This should make viewing logs significantly less janky
2018-12-18 15:21:26 -05:00
Joseph Schorr
9e2c5417b8
Merge pull request #3310 from quay/joseph.schorr/QUAY-1235/drop-logentry2
...
Remove all references to LogEntry2 from the code
2018-12-18 15:18:22 -05:00
Joseph Schorr
feee49be9e
Ensure we encode the config in manifest schema 2 via the canonical JSON format
2018-12-18 14:52:19 -05:00
Joseph Schorr
48e584905a
Make sure to decode manifests into utf-8 when necessary
...
This fixes a decoding error
2018-12-17 16:31:24 -05:00
Joseph Schorr
6cc7102ec8
Merge pull request #3312 from quay/fix-repo-panel-tags
...
Fix the image track offsets in the repo tags UI
2018-12-12 12:12:59 -05:00
Joseph Schorr
b4ee3578d7
Fix the image track offsets in the repo tags UI
...
We were missing the `Features` injected into the scope, so the calculation was already returning false
2018-12-12 11:48:33 -05:00
Joseph Schorr
1d57e1eb9f
Merge pull request #3311 from quay/loosen-schema-requirements
...
Make command optional in schema 2 manifests (as per OCI spec) and pull out additional information
2018-12-12 10:16:30 -05:00
Joseph Schorr
71b7a2b3a2
Make command optional in schema 2 manifests (as per OCI spec) and pull out additional information
...
Also updates the manifest view page to show the comment or digest if there is no command defined
2018-12-11 17:23:39 -05:00
Joseph Schorr
fc691cefb4
Merge pull request #3306 from quay/fix-manifest-ui
...
Fix manifest UI page to properly show the layers of manifests and show manifest lists
2018-12-11 16:53:36 -05:00
Joseph Schorr
d7918cb231
Fix indentation
2018-12-11 15:55:01 -05:00
Joseph Schorr
6a94eba1a2
Remove all references to LogEntry2 from the code
...
The migration to actually drop the table will go in after this code has been pushed to production
2018-12-11 15:54:16 -05:00
Joseph Schorr
bf3fe2bfd6
Merge pull request #3309 from quay/less-flaky-tests
...
Add automatic retry to the registry test suite to make it less flaky
2018-12-11 15:52:43 -05:00
Joseph Schorr
c1bdae395c
Fix column offsets for when security scanning is disabled
2018-12-11 14:20:21 -05:00
Joseph Schorr
be2cece7b0
Merge pull request #3302 from quay/joseph.schorr/QUAY-1017/tag-backfill
...
Tag backfill worker
2018-12-11 13:31:35 -05:00
Joseph Schorr
d49eec18a3
Add automatic retry to the registry test suite to make it less flaky
2018-12-11 13:30:30 -05:00
Kenny Lee Sin Cheong
c6b2e5a54b
Add AppToken to schema ( #3308 )
2018-12-11 13:17:09 -05:00
Joseph Schorr
a9b8586423
Make sure list_manifest_layers is not callable for manifest lists
2018-12-11 13:10:24 -05:00
Joseph Schorr
7fa60d5802
Fix manifest UI display for manifests with empty layers
...
Also fixes the command for schema 2 manifests
2018-12-10 17:10:54 -05:00
Joseph Schorr
d734adb8c3
Add missing method
2018-12-10 16:56:19 -05:00
Joseph Schorr
6963107ec6
Fix after merge
2018-12-10 15:37:26 -05:00
Joseph Schorr
eb7591183d
Add a tag backfill worker to fully backfill the new-style Tag's in the background
2018-12-10 15:36:25 -05:00