UtrechtUniversity / yoda

A system for reliable, long-term storing and archiving large amounts of research data during all stages of a study.
https://utrechtuniversity.github.io/yoda/
GNU General Public License v3.0
44 stars 26 forks source link

[BUG] Publication failure due to inconsistent validation of Creator Affiliation #455

Closed peer35 closed 1 month ago

peer35 commented 2 months ago

Is there an existing issue for this?

Current Behavior

The default-3 metadata form shows the Creator Affiliation Name as mandatory, with asterisk and a red box, and tied to the green "Required for the vault" progress bar. But if you leave the value empty it is still possible to submit the folder for the Vault.

If that dataset is later submitted and approved for publication the publication process fails and the datasets stays in the "Approved for publication" state. Logs indicate the metadata has failed to validate because of the missing Affiliation (Log details known at SURF SD-80590).

Expected Behavior

Upon clicking submit in the Research space Yoda should show the standard error message: Metadata is not valid, please open metadata form for more information and not process the submission if a mandatory Creator Affiliation name value is empty.

Steps To Reproduce

In a group using the default-3 schema:

Environment

- Yoda v1.9.0-rc6 & Yoda development (2024-07-31)
- Metadata schema default-3

Anything else?

No response

ccacciari commented 2 months ago

As additional information, here it is the iRODS server log:

Jul 26 16:39:03 pid:24193 NOTICE: writeLine: inString = {rods#yoda} [publication] Running process_publication in verbose mode. Jul 26 16:39:03 pid:24193 NOTICE: writeLine: inString = {rods#yoda} [publication] Initial publication status is: Unknown Jul 26 16:39:03 pid:24193 NOTICE: writeLine: inString = {rods#yoda} [publication] Setting publication date. Jul 26 16:39:03 pid:24193 NOTICE: writeLine: inString = {rods#yoda} [publication] Generating preliminary DOI. Jul 26 16:39:03 pid:24193 NOTICE: writeLine: inString = {rods#yoda} [publication] Updating modification date. Jul 26 16:39:03 pid:24193 NOTICE: writeLine: inString = {rods#yoda} [publication] Generating combi JSON. Jul 26 16:39:03 pid:24193 NOTICE: writeLine: inString = {rods#yoda} [publication] Creating landing page. Jul 26 16:39:03 pid:24193 NOTICE: writeLine: inString = {rods#yoda} [publication] Generating Datacite JSON. Jul 26 16:39:03 pid:24193 NOTICE: writeLine: inString = {rods#yoda} [publication] Exception while generating Datacite JSON: 'Affiliation_Name' Jul 26 16:39:03 pid:24193 NOTICE: writeLine: inString = {rods#yoda} [publication] Error status after generating Datacite JSON: Unrecoverable

lwesterhof commented 2 months ago

Thank you for the bug report. We have registered it in our internal bug tracker as ticket YDA-5859 .