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

Upgrade from Payara 5 to 6 #8774

Closed
wants to merge 32 commits into from
Closed

Upgrade from Payara 5 to 6 #8774

wants to merge 32 commits into from

Conversation

pdurbin
Copy link
Member

@pdurbin pdurbin commented Jun 3, 2022

What this PR does / why we need it:

Payara 5 is going EOL.

Which issue(s) this PR closes:

Special notes for your reviewer:

  • Do not move this to QA until Payara 6 Alpha 3 is out and we can test with it.
  • Do not move this to QA until Payara 6 Final is out and we can test with it.
  • Do not move this to QA until we've made a final decision to go with the Rewrite/PrettyFaces library I built on my Mac and put in local_lib. Check EE9 Compatible Release ocpsoft/rewrite#304 for progress toward a compatible release from upstream.
  • Instead of d86e220 should we preserve backward compatibility of the SWORD API by inserting attachment; for the user if it isn't supplied?
  • The Perl installer has not been updated. Honestly, I'm ok with deleting it (and references to it, of course, if any).
  • The release note snippet needs work. Upgrades have not been tested.

Suggestions on how to test this:

Does this PR introduce a user interface change? If mockups are available, please link/include them here:

No

Is there a release notes update needed for this change?:

Yes, a stub is included.

Additional documentation:

None but references in the guides to Payara 5 have been switched to Payara 6.

poikilotherm and others added 30 commits May 17, 2022 19:44
1. The Jersey dependencies in use did not use the versions imported via the
Payara BOM (which itself imports a Jersey BOM).
2. The coordinates for the server package changed, re-aligned.
…nly #8305

This avoids potential trouble were it's unclear from where the higher exceptions come from, javax or jakarta namespace.
Also add provided dependency of our persistence provider to POM to allow class resolution in IDEs.
For now this is payara-6.2022.1.Alpha2 (the latest).
The jars were built from this commit (scratch work):

pdurbin/rewrite@d494160
Conflicts (just javax vs. jakarta imports):
src/main/java/edu/harvard/iq/dataverse/TemplatePage.java
#8305 Vagrantfile.payara6 deploys 8305-payara6 warfile on payara-6-A2
Also, in docker-aio, restore lines to publish root dataverse
collection (uses SWORD, known to be broken) and grant perms.

Also update scripts and config related to installer or dev environments.
Otherwise, at runtime, SWORD APIs fail (and who knows what else).

Note that CDI 4.0 is coming with Jakarta EE 10 and we'll need to switch
to "annotated" then.
In EditDDI I was seeing a NullPointerException on line 136
(createNewDraftVersion). Switch from `@Context HttpServletRequest`
to our ordinary way of API auth fixed it.

In DataversesIT I was seeing an OptimisticLockException so I
added a sleep.
Conflicts (all javax vs jakarata):
src/main/java/edu/harvard/iq/dataverse/EditDatafilesPage.java
src/main/java/edu/harvard/iq/dataverse/UserNotification.java
src/main/java/edu/harvard/iq/dataverse/UserNotificationServiceBean.java
src/main/java/edu/harvard/iq/dataverse/api/Notifications.java
src/main/java/edu/harvard/iq/dataverse/api/datadeposit/MediaResourceManagerImpl.java
src/main/java/edu/harvard/iq/dataverse/authorization/providers/builtin/DataverseUserPage.java
src/main/java/edu/harvard/iq/dataverse/authorization/users/AuthenticatedUser.java
src/main/java/edu/harvard/iq/dataverse/util/FileUtil.java
src/main/java/edu/harvard/iq/dataverse/util/json/JsonPrinter.java
src/test/java/edu/harvard/iq/dataverse/util/json/JsonPrinterTest.java
Note that we need to swap Payara 6.2022.1.Alpha2 for the final version.
Copy link
Contributor

@landreev landreev left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

It looks like there's been some movement on the Payara side, a good time for this to go back into dev.
(Also, note that it's showing a few conflicts now)

@landreev landreev removed their assignment Jul 20, 2022
@donsizemore
Copy link
Contributor

It looks like there's been some movement on the Payara side, a good time for this to go back into dev. (Also, note that it's showing a few conflicts now)

Correct - a mvn package results in controlledvocabulary and other language bundle errors, but there is concern that a merge with develop could take several hours. I have the full Maven output if anyone is interested, but I'm less inclined to waste anyone's time with it until the branch is current with develop.

@coveralls
Copy link

Coverage Status

Coverage decreased (-0.007%) to 19.758% when pulling d1a19f3 on 8305-payara6 into 567e506 on develop.

With the release of prettyfaces/rewrite 5.0.0.Alpha1 they finally
released a version compatible with at least Jakarta EE 9.

This includes the patches @pdurbin applied to our local build, too.
Removing the local built, too.

See also: ocpsoft/rewrite#304
@poikilotherm
Copy link
Contributor

poikilotherm commented Nov 2, 2022

@pdurbin what do we do with this PR? It's based on Jakarta EE 9.1, but we need EE 10. I did that in https://github.com/IQSS/dataverse/tree/8305-payara6-ee10. Should we open a new PR?

@pdurbin
Copy link
Member Author

pdurbin commented Nov 2, 2022

@poikilotherm yes, a new PR is better. I'm closing this one. Thanks!

@pdurbin pdurbin closed this Nov 2, 2022
@pdurbin pdurbin deleted the 8305-payara6 branch January 26, 2023 13:49
@pdurbin
Copy link
Member Author

pdurbin commented Jan 26, 2023

This is the new PR (thanks, @poikilotherm!):

I deleted the old branch to reduce confusion. 😄

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
Status: No status
Development

Successfully merging this pull request may close these issues.

Upgrade to Payara 6 and from EE 8 to EE 10 (end of Payara 5 Community Edition security patches Q2/2022)
6 participants