distribution/registry/storage/driver
James Hewitt e22f7cbc73
Pass the last paging flag to storage drivers
Storage drivers may be able to take advantage of the hint to start
their walk more efficiently.

For S3: The API takes a start-after parameter. Registries with many
repositories can drastically reduce calls to s3 by telling s3 to only
list results lexographically after the last parameter.

For the fallback: We can start deeper in the tree and avoid statting
the files and directories before the hint in a walk. For a filesystem
this improves performance a little, but many of the API based drivers
are currently treated like a filesystem, so this drastically improves
the performance of GCP and Azure blob.

Signed-off-by: James Hewitt <james.hewitt@uk.ibm.com>
2023-08-29 11:27:42 +01:00
..
azure Pass the last paging flag to storage drivers 2023-08-29 11:27:42 +01:00
base Pass the last paging flag to storage drivers 2023-08-29 11:27:42 +01:00
factory go.mod: change imports to github.com/distribution/distribution/v3 2021-02-08 18:30:46 +01:00
filesystem Pass the last paging flag to storage drivers 2023-08-29 11:27:42 +01:00
gcs Pass the last paging flag to storage drivers 2023-08-29 11:27:42 +01:00
inmemory Pass the last paging flag to storage drivers 2023-08-29 11:27:42 +01:00
middleware Enable bodyclose linter 2023-08-19 09:45:44 +01:00
s3-aws Pass the last paging flag to storage drivers 2023-08-29 11:27:42 +01:00
testsuites Handle rand deprecations in go 1.20 2023-08-28 09:33:12 +01:00
fileinfo.go format code with gofumpt 2022-11-03 22:48:20 +01:00
storagedriver.go Pass the last paging flag to storage drivers 2023-08-29 11:27:42 +01:00
walk.go Pass the last paging flag to storage drivers 2023-08-29 11:27:42 +01:00
walk_test.go Pass the last paging flag to storage drivers 2023-08-29 11:27:42 +01:00