dataverse
dataverse copied to clipboard
DANS/Local PermaLink PID Provider
What this PR does / why we need it: Refactors PID classes (tbd) and adds a new PermaLink Provider for catalog/replica use
Which issue(s) this PR closes:
Closes #
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:
Coverage: 20.153% (+0.04%) from 20.116% when pulling 3ef94ebd30d6df864a081d22902ab94add2e9be1 on GlobalDataverseCommunityConsortium:DANS/local_pid_provider into 1a797171cdb73741b5da4a683f38697558349b5c on IQSS:develop.
@qqmyers was reviewing this with Stefano tonight. There is no brief explanation to go with the sizing. :(
It is a large refactoring of a central component in Dataverse that will likely take significant time for review. Also, because it is a refactoring, thorough QA for regressions is needed in addition to testing the new PermaLink capability itself.
Creating a dataset with working DOI set up fails:
dataset_create_fail.txt
Issues found:
- exception when creating dataset w/ doi configured (fixed)
- some noisy/extra logging on dataset creation, file upload, dataset publish (fixed)
- Null ptr in server.log when creating a dataset with one file and file pid disabled. Looks like it was during export, both OAI_ORE and JSON_LD formats are missing. See attached stack trace. (fixed, thanks!) nofilepidpuberr.txt
- Stack trace error in server.log when creating dataset with sequential (storedProcGenerated) style, :IdentifierGenerationStyle. Says FK2/100002/1) already exists. When I checked db, only one identifier, with only 100002 for the dataset exists. I have not yet published so the file pid should not yet exist. Dataset remains locked. (fixed) seqpiderroncreateds.txt
- Cannot display dataset created using hdls, throws ui exception. (fixed)
- Cannot create dataset using EZID, UI and server.log exceptions (fixed) ezid_pid_ds_create_err.txt
- Perma citation link not redirecting/using configured doi.baseurlstring setting, instead uses default siteurl value. (fixed)
- Update permlinks doc section to explain default siteurl and new perma.baseurlstring setting. (fixed)
- Permalinks doesn't seem to support file pids, should it? (fixed)
3 should be fixed - there were a couple places where the change from getGlobalIdAsString() -> getGlobalId().asString() wasn't checking for a possible null for files. The stacktrace above should have caused the ORE export to fail. Still looking at 4 - including the odd fact that dependent storedProcedure generation method doesn't seem to use the stored procedure (and didn't before this PR either).