-
Notifications
You must be signed in to change notification settings - Fork 495
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
The "ListSets" command fails during the creation of a harvesting client for Zenodo #8289
Comments
Hi, We have encountered the same issue also in Dataverse 5.6. On the basis of our experience, ListSets command was working (returning a partial list of sets) until November 16th 2021, then stopped working the day after (following some maintenance on the Zenodo side). |
There's a good chance this has already been fixed; either during the XOAI update (like many other older harvesting issues), or even earlier. Also, we have recently fixed up the harvesting clients API that could be used to create a client when it cannot be done via the UI for whatever reason. |
Priority Review with Stefano:
|
To confirm what I said back in January, this appears to be another harvesting issue that we already fixed as part of the major overhaul of the underlying oai library used by Dataverse (xoai). Note the error message cited in the original user report:
- the package mentioned in it, The scenario described, creating a client to harvest from zenodo.org now works, showing a very long list of sets to choose from in the pull down menu. I'm assuming that the reason it was failing in the past was exactly that, that the server was listing too many sets that required a few resumption tokens, with something breaking in the process. Despite the fact that you can now successfully create the specific client as described in the issue, we should assume that something may still go wrong during the interactive steps involved in creating a client via the GUI. That process by design relies on querying the server in real time, to ensure that it's responding and to get the lists of the sets and the metadata formats that it supports. If any of these requests fail, the client cannot be created. Since this issue was opened, we have added (or rather, fixed) a working API for creating clients. One important thing about that API is that, unlike the GUI, the application does not try to validate the entered url of the server or to make any real time OAI calls. This is by design, giving an admin an option to be able to create a client in a rare case where the This is not explicitly spelled out in the guide, I realized. I will add that and make a PR closing this issue. But aside from that, I don't think there's anything we need to do here. 🎉 |
Harvesting Clients guide updates per #8289.
What steps does it take to reproduce the issue?
As a superuser, going to the harvesting client section of the dashboard and trying to create a new client. The base URL is https://zenodo.org/oai2d OR https://www.zenodo.org/oai2d (only the first one is given by the official documentation at https://developers.zenodo.org).
When does this issue occur?
After the first step of the setup wizard is completed (and the base URL has been specified).
Which page(s) does it occurs on?
See above
What happens?
The set list remains empty.
The server.log registers the following lines :
Important note, a curl command entered on the same server (curl -X GET https://zenodo.org/oai2d/?verb=ListsSets) OR directly in a browser retrieves a partial list of sets (the querying error and 500 response are not reproduced in these cases).
My opinion is it would help to know exactly what command is sent by Dataverse. I don't know any way to check this on my side.
To whom does it occur (all users, curators, superusers)?
You have to be superuser to access the feature.
What did you expect to happen?
See the set list populated at least partially.
Which version of Dataverse are you using?
5.2
Any related open or closed issues to this bug report?
#8267 for being able to get around this limitation by filling the "set" field through the API.
#8290 for not being able to do so (makes Dataverse crash).
The text was updated successfully, but these errors were encountered: