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

Spike: Test upgrading to Java SE 11 #5512

Closed
scolapasta opened this issue Feb 5, 2019 · 5 comments
Closed

Spike: Test upgrading to Java SE 11 #5512

scolapasta opened this issue Feb 5, 2019 · 5 comments

Comments

@scolapasta
Copy link
Contributor

scolapasta commented Feb 5, 2019

This will be a spike so we can better estimate #4259

Reviewing docs, upgrading to Java 11 (building and deploying) and getting an understanding of what breaks so that we can better estimate the move in a future issue.

@pdurbin
Copy link
Member

pdurbin commented Feb 12, 2019

I created branch 4259-5512-java11 (pull request #5530) and my plan is to test it on CentOS 7.6 on AWS with this:

ec2-create-instance.sh -b 4259-5512-java11 -g main.yml

I'll have to tweak my local copy of ec2-create-instance.sh to check out the "39-java11" branch on the dataverse-ansible side, which I created for IQSS/dataverse-ansible#39 and I see that @donsizemore also created a "39_Support_Java_11" branch I can try as well.

My pull request is influenced by pull request #5116 by @poikilotherm . Like him, I added --illegal-access=permit which sounds pretty bad and one can read about this flag at https://docs.oracle.com/javase/9/tools/java.htm

I'm concerned that our FileUtil.determineFileType method changed under our feet and will probably ping @landreev for any thoughts on it. For now, I added a FIXME to put it back:

screen shot 2019-02-12 at 2 48 05 pm

@kcondon pointed out "OpenJDK Life Cycle and Support Policy" at https://access.redhat.com/articles/1299013 the other day and it was very helpful in determining that CentOS 7.6 is the first version of CentOS that offers Java 11. The RPM is called "java-11-openjdk-devel" which you can see in my commit in a new branch at IQSS/dataverse-ansible@b2f9118

screen shot 2019-02-12 at 2 51 39 pm

In order to move quickly, I started requiring Java 11 in pom.xml but we should have a discussion if this is actually the plan or if we plan to support both Java 8 and Java 11.

@pdurbin
Copy link
Member

pdurbin commented Feb 12, 2019

I ran ec2-create-instance.sh -b 4259-5512-java11 -g main.yml (using @donsizemore 's "39_Support_Java_11" branch with the attached config
main.yml.txt
) as mentioned above and I think I'm already blocked by the fact that Glassfish doesn't seem to support Java 11. I'm getting this error:

GlassFish requires Java SE version 6. Your JDK is version 0

https://stackoverflow.com/questions/52411138/can-glassfish-5-run-with-java-10-or-is-it-only-compatible-with-java-8 seems to indicate that Java 11 is not supported by any version of Glassfish.

https://www.payara.fish/support/openjdk-support/ seems to indicate that Payara only works with Java 11 if you use Azul Java 11. I think. It's confusing. The founder of Payara said "The Payara Platform is not supported on JDK 11" in October 2018 at payara/Payara#3278 (comment)

If we can't use Glassfish or Payara with Java 11 I think this issue is blocked. I'll move it to code review for discussion.

@djbrooke
Copy link
Contributor

@scolapasta should we close this? Is the question answered?

@scolapasta
Copy link
Contributor Author

Well, the spike "worked" in that it let us know that we will need to upgrade app server first before we can change Java version. (once an app server we want to use supports Java 11). Once we've done that we'll likely want to reopen so we can do the spike we expected and see what of our code base will break.

@djbrooke
Copy link
Contributor

OK, I'll close this out for now.

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

No branches or pull requests

5 participants