Skip to content
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

IQSS/9471- support delayed setting of :DoiProvider #9472

Conversation

qqmyers
Copy link
Member

@qqmyers qqmyers commented Mar 24, 2023

What this PR does / why we need it:

This PR creates a fix that is expected to change further with the work to support multiple providers at once is done. The fix for DOI providers to allow new installs (with no settings to start) to avoid deciding which bean is configured until the :DoiProvider setting exists works by moving the code that previously ran (in #8674) in @PostConstruct methods to determine if a give Provider was the active one to an isConfigured() method that will return true for the one bean configured once the :DoiProvider setting exists.

Which issue(s) this PR closes:

Closes #9471

Special notes for your reviewer:
Lots of discussion at https://iqss.slack.com/archives/C010LA04BCG/p1679663888250749. Nominally the ~root cause here was the use of a Setting rather than jvm-option to decide which bean is active combined with a new check to determine if a provider is allowed to mint new DOIs. The latter isn't technically needed yet as only one PidProvider can run at present but the code was added in anticipation of upcoming work to allow multiple providers. As more discussion is needed (probably a tech hour) for that (including how everything moves to microprofile config options, whether PidProviders can mint new PIDs or just maintain existing ones, etc.) the fix here is a relatively simple one to restore the previous capability to allow the :DoiProvider setting to be set after Payara is up and running.

Suggestions on how to test this:
Either start a new instance from scratch (clean database) and confirm that dataset creation/publication works, and/or delete the :DoiProvider setting, restart Payara, and verify that after setting the :DoiProvider again, that dataset creation/publication works.

The fix is generic to all DOI PIDProviders and affects whether the configured one is active or not, so exhaustive testing beyond smoke tests that PermaLinks and Handles, and DataCite, EZID, and FAKE all work, and that File PIDs work for all providers also, may not be useful.

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?:
Doesn't really change anything not covered in #8674 already.

Additional documentation:

This will change further with the work to support multiple providers at
once so this is a temporary fix for DOI providers to allow new installs
(with no settings to start) to avoid deciding which bean is configured
until the :DoiProvider setting exists.
@qqmyers qqmyers marked this pull request as draft March 24, 2023 18:33
@coveralls
Copy link

coveralls commented Mar 24, 2023

Coverage Status

Coverage: 20.184% (+0.03%) from 20.149% when pulling 4257351 on GlobalDataverseCommunityConsortium:DANS/local_pid_provider into 47f0b0e on IQSS:develop.

@qqmyers qqmyers marked this pull request as ready for review March 27, 2023 14:39
@qqmyers qqmyers added this to Ready for Review ⏩ in IQSS/dataverse (TO BE RETIRED / DELETED in favor of project 34) via automation Mar 27, 2023
@qqmyers qqmyers moved this from Ready for Review ⏩ to ▶ SPRINT READY in IQSS/dataverse (TO BE RETIRED / DELETED in favor of project 34) Mar 27, 2023
@qqmyers qqmyers added the Size: 3 A percentage of a sprint. 2.1 hours. label Mar 27, 2023
@scolapasta scolapasta moved this from ▶ SPRINT READY to Ready for Review ⏩ in IQSS/dataverse (TO BE RETIRED / DELETED in favor of project 34) Mar 27, 2023
IQSS/dataverse (TO BE RETIRED / DELETED in favor of project 34) automation moved this from Ready for Review ⏩ to Ready for QA ⏩ Mar 27, 2023
@kcondon kcondon self-assigned this Mar 28, 2023
@kcondon kcondon merged commit 2e76bdb into IQSS:develop Mar 28, 2023
2 checks passed
IQSS/dataverse (TO BE RETIRED / DELETED in favor of project 34) automation moved this from QA ✅ to Done 🚀 Mar 28, 2023
@pdurbin pdurbin added this to the 5.14 milestone May 10, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Size: 3 A percentage of a sprint. 2.1 hours.
Projects
No open projects
Development

Successfully merging this pull request may close these issues.

New installations have to restart after :DoiProvider is set to allow PID creation
5 participants