-
-
Notifications
You must be signed in to change notification settings - Fork 28
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
On download, ensure resolve() endpoints exhaust all object locations #415
Comments
Moving comments from https://github.com/NCEAS/metacat/1407
|
Thanks for bringing the details in here. (2) doesn't sound too bad. Other ideas might be:
|
Yeah @amoeba - I like the negotiated |
More comments and ideas from a Slack thread: lauren 1:44 PM rossdm 1:45 PM chris: 1:48 PM lauren 1:48 PM chris: 1:49 PM lauren 1:50 PM chris: 1:51 PM lauren 1:52 PM chris: 1:54 PM davev 1:54 PM chris: 1:57 PM |
Bump. @laurenwalker - In the ESS-DIVE discussion today, this bug came up as a priority. Can we add this into a up and coming milestone? |
Ok, I added it to 2.12.0 |
We enable direct object downloads using the
Download
button in theMetadataView
, and the URLs in thedataone
theme default to CNresolve()
URL endpoints. This call returns a response body with aTypes.ObjectLocationList
payload, and an HTTP303
redirection code to the first URL in the object location list. If there is any failure on the redirected request, we need to catch the exception and iterate through the rest of theObjectLocationList
to try each replica URL until we succeed with the download. Only after exhausting the list should we show any sort of error message. Currently, we don't catch the error to provide a message - the browser just shows an error in the download status.We should also think about providing a configuration flag in all themes to request to use the CN resolve URL by default, or to just go straight to the MN
get()
endpoint.The text was updated successfully, but these errors were encountered: