-
Notifications
You must be signed in to change notification settings - Fork 53
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
Retry in DRS #238
Comments
I think there are two separate requests in the HCA documentation: |
@dglazer makes good points regarding The same could be said for HTTP 3xx redirects, which are also part of the HTTP specification, and which (at least some) DRS servers will perform as part of their internal implementation/operation. Yet, I think 3xx redirects are less commonly used and their semantics are not as clear as |
The first key question here is:
Given DRS is a GA4GH specification, genomic data files are large, and there is a large and ever increasing number of them, hopefully the answer to this question is a resounding "Yes!" The next key question is:
The redirection/retry-after approach currently in the HCA data-store API and implementation is one option. Are there other approaches/options that others would like to propose for this purpose? |
For more information on this issue, please see: #274 |
* Enable handling of data access delays using HTTP 301/Retry-After Enable DRS schema support for data repository services that may incur delays, such as retrieval of data from cold storage with substantial latency. When an operation is delayed, a response is provided with HTTP code 301 and a Retry-After header indicating the duration the client should wait before following the redirect. Resolves #238 * Changed delay response status code to 202 Changed the response in the case of a delay from status code 301 (Moved Permanently) to 202 (Accepted). This is a better choice as it is more consistent with the IETF specifications for HTTP and the DRS API overall.
Resolved by #274 |
'/objects/{object_id}/access/{access_id}':
HCA asked if we can support a "301 - Handle asynchronously, downstream users are expected to retry later."? With a header of Retry-After which is a "delay in seconds, downstream users are expected to retry after the delay." See their API for examples https://dss.data.humancellatlas.org/.
Might be worth looking at other endpoints but the access endpoint in particular might involve a delay and need for a retry if, for example, a given DRS server is pulling data off of cold storage.
The text was updated successfully, but these errors were encountered: