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
Globus Bug Fixes #10345
Globus Bug Fixes #10345
Conversation
Testing with NESE Demo Tape pool - a managed store with files inaccessible to Dataverse - the following in the log must be coming from the
|
Testing a remote managed store upload workflow, aside from the cast-to-int problem mentioned on slack, the issue persists where the transfer successfully completes on the globus side, but then dataverse fails to save the datafile on its end.
The above is likely a symptom, not the cause of the failure (the exception is thrown in Looking at the following lines: https://github.com/GlobalDataverseCommunityConsortium/dataverse/blob/6d3769f2a26b70e7108c18b92f39c1838ad8cd28/src/main/java/edu/harvard/iq/dataverse/globus/GlobusServiceBean.java#L820-L852 it looks like when a failure occurs during this /addFiles api call it is not recorded as such (countError not incremented). Also, the edit lock is left on the dataset, because the It's not immediately clear to me from the server log why the actual failure in |
/push-image thx |
📦 Pushed preview images as
🚢 See on GHCR. Use by referencing with full name as printed above, mind the registry name. |
I have confirmed that the above (datafile not created, dataset stuck with an "edit in progress" lock) is happening consistently not just on my own dev. instance, but also on other servers, like dataverse-internal. Same exception stack trace. |
Finally occurred to me to check - but it looks like it's not just the Globus uploads! This is from beta, which is running the develop branch build:
|
It's really simple too: all it appears to be is that this JsonPrinter line in 6.1:
is working because the JsonObjectBuilder methods are overridden by our own NullSafeJsonBuilder, and in develop we somehow lost that, and the .add methods from the native class are used. |
(there was a wrong code line copy-and-pasted in the last comment; corrected) |
It is a very recent change, and it is this line, 660 in JsonPrinter.json:
jsonObjectBuilder() creates a NullSafeJsonBuilder, but it is cast back to the native JsonObjectBuilder. |
With the fix for the main issue merged in develop (#10366) and with the fix for file size>2GB committed, I can now upload files - yay. |
A few cosmetic/trivial additions to the guide, if you want them. Things like the dataset id query parameters missing from the curl example lines... that are really obvious, and it may be safe to assume that only serious developers are going to read this guide... so, up to you.
cosmetic additions to globus-api.rst
Just noticed the "size 3" label - lol. |
Several issues have been discovered in testing the new Globus capabilities in prep for the MOC demo and DCM 2024 meeting:
PR is draft until the latest round of testing is done.
Which issue(s) this PR closes:
Closes #10344
Closes #10231
Special notes for your reviewer:
Suggestions on how to test this:
Does this PR introduce a user interface change? If mockups are available, please link/include them here:
Is there a release notes update needed for this change?:
Additional documentation: