-
Notifications
You must be signed in to change notification settings - Fork 25.1k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Pagination and/or filtering for GET /_snapshot/<repo>/_all endpoint #19167
Comments
See the other issue I opened at wikimedia/search-repository-swift#24 |
I am not sure if pagination is the right term here, are you interested in parital results based on a timeout? ie. if a repo won't respond in time you get the listing that have already arrived? Something like this? |
Hmm, no, in this case I would not be interested in partial results due to timing out. I am interested in limiting the amount of listing I am requesting from the repo to give it a chance to respond within reasonable time. A timeout would still be considered a failure in this case. I'm not sure if all or any of the repo implementations use a fast-access index for listing purposes. It might just be that the Swift one is doing an exhaustive listing of objects in the container where it could have done something less expensive. Maybe our usage of snapshots is a little bizarre, but we can have several hundreds snapshot points over a long period of time. A way to filter by date range would be quite handy to maintain responsiveness in a list/select/restore UI. In any case, having a way to specify parameters on |
Thanks for the feedback. I think that you can achieve what you want by creating multiple repositories like You can apply the same naming convention in snapshot names, like |
Some repository plugins can have high latency (in my case, Wikimedia's Swift Repository Plugin), or simply very large listings of snapshots. Pagination is essential to prevent timeouts, reduce payload size and in general reduce the workload for the plugin and upstream services.
In most cases a date filter would suffice, but it's not clear the plugin would be able to apply such filtering efficiently.
The text was updated successfully, but these errors were encountered: