-
Notifications
You must be signed in to change notification settings - Fork 737
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
JITServer tests failing #21066
Comments
OpenSSL changed on Linux/AIX to be bundled, not sure if it's related. 7a12bae...64a7502 All the failures seem to be on rh/centos 6/7. |
|
It's likely a problem related to the libssl.so.3 library we are now bundling with the JVM. |
I cannot reproduce this problem locally. I used all the latest sources and built in a centos7 container. The host OS is RHEL9 though. |
You need to build with configure option |
After configuring with |
Both server and client use On the side note, the openssl lib is recompiled from scratch on every 'make images' command (even though it has not been changed) which makes the "code-build-test" cycle very painful. |
@keithc-ca fyi the following from the previous comment.
|
I have wondered whether we can do better, but I'm not sure that we can detect whether the OpenSSL configuration is up-to-date. I think that configure step creates one or more new header files that are used pervasively, leading to rebuilding essentially all of OpenSSL. My practice is to (re-)run |
Using the
Server:
However, what the server cannot find is
Server:
As I understand, the RUNPATH is set with Correction: I see that libcrypto is using RPATH and not RUNPATH. Therefore we should be looking for |
|
Would it help to explicitly load libcrypto before loading libssl? |
Explicitly trying to load libcrypto (before libssl) appears to use
as opposed to the One thing to worry is whether libssl will add other dependencies in the future.
|
When libssl3 (or higher) is bundled with the JDK, we want to load that version in preference over the one present on the system. `dlopen` will do that because the RUNPATH for the JIT dll (from which `dlopen` is invoked) includes the "JDK/lib" path where libssl is bundled. However, as part of loading libssl3, `dlopen` will also attempt to load libcrypto3 (because it is a dependency). This is searched in the RPATH of the jitserver executable for a server, or in the RPATH of the java executable for a client. Currently, the jitserver executable does not include an RPATH, so libcrypto3 is searched on the system and this may fail on systems that do not have version 3 installed. This problem can be circumvented by performing an explicit `dlopen` for the crypto library, in which case the RUNPATH for the JIT is going to be used as search path. Fixes: eclipse-openj9#21066 Signed-off-by: Marius Pirvu <[email protected]>
https://openj9-jenkins.osuosl.org/job/Test_openjdk11_j9_sanity.functional_s390x_linux_Nightly_testList_0/972/ - rh7-390-3
testJITServer_1
https://openj9-jenkins.osuosl.org/job/Test_openjdk11_j9_sanity.functional_x86-64_linux_Nightly_testList_0/760/ - cent7-x64-3
https://openj9-jenkins.osuosl.org/job/Test_openjdk17_j9_sanity.functional_s390x_linux_Nightly_testList_0/908/ - rh7-390-2
https://openj9-jenkins.osuosl.org/job/Test_openjdk17_j9_sanity.functional_x86-64_linux_Nightly_testList_0/694 - cent7-x64-3
https://openj9-jenkins.osuosl.org/job/Test_openjdk21_j9_sanity.functional_s390x_linux_Nightly_testList_0/410 - rh7-390-4
https://openj9-jenkins.osuosl.org/job/Test_openjdk24_j9_sanity.functional_x86-64_linux_Nightly_testList_0/8/ - cent7-x64-5
also in OMR acceptance
https://openj9-jenkins.osuosl.org/job/Pipeline-OMR-Acceptance/824/
https://openj9-jenkins.osuosl.org/job/Test_openjdk17_j9_sanity.functional_s390x_linux_OMR_testList_0/565 - rh7-390-4
https://openj9-jenkins.osuosl.org/job/Test_openjdk21_j9_sanity.functional_s390x_linux_OMR_testList_0/208/ - rh7-390-1
https://openj9-jenkins.osuosl.org/job/Test_openjdk8_j9_sanity.functional_x86-64_linux_OMR_testList_0/598/ - cent6-x64-4
https://openj9-jenkins.osuosl.org/job/Test_openjdk8_j9_sanity.functional_x86-64_linux_OMR_testList_1/598/ - cent6-x64-2
https://openj9-jenkins.osuosl.org/job/Test_openjdk11_j9_sanity.functional_x86-64_linux_OMR_testList_0/605/ - cent7-x64-5
https://openj9-jenkins.osuosl.org/job/Test_openjdk17_j9_sanity.functional_x86-64_linux_OMR_testList_0/502/ - cent7-x64-1
The text was updated successfully, but these errors were encountered: