IQSS / dataverse

Open source research data repository software
http://dataverse.org
Other
882 stars 494 forks source link

Fix lookups of Harvested datasets with lower-case versions of persistent identifiers in the database #11003

Closed qqmyers closed 1 week ago

qqmyers commented 2 weeks ago

What this PR does / why we need it: The recent changes to support lower case shoulders in #10708 accidentally broke retrieval of harvested datasets with lowercase DOIs (which is newly possible with DataCite as the Harvesting source). This fix stores harvested DOIs in their original case (useful if the harvesting source is not case-insensitive even though it should be) but changes to using case-insensitive DB queries so case-insensitive retrieval works.

Which issue(s) this PR closes:

Special notes for your reviewer:

Suggestions on how to test this: Verify that the dataset page works for DOIs when the db identifier for it is in lower/mixed case in the database. This only happens naturally when Harvesting from a source that provides a lower/mixed case DOI. To test, editing the db entry for a normal/internal DOI would work. Regression testing - datasets with normal DOIs, PermaLinks, Handles as the identifier/alternative identifier should continue to work and be case insensitive (i.e. one can change the dataset page URL to use lowercase letters and it should still work.)

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:

coveralls commented 2 weeks ago

Coverage Status

coverage: 21.856%. remained the same when pulling b8c0c405984ea36c1bc7dfb9b54ff6411ffd2dc2 on GlobalDataverseCommunityConsortium:HarvestDatasetUsingPID into e208eede135a96e2d0250448ffbb9ad38b3f7325 on IQSS:develop.

landreev commented 1 week ago

@qqmyers @stevenwinship thank you for the extra effort with the index, etc.