This repository was archived by the owner on Oct 7, 2021. It is now read-only.
-
Notifications
You must be signed in to change notification settings - Fork 32
Generated liberty application won't start on ppc64le due to x86_64 agentlib. #412
Copy link
Copy link
Open
Description
If I use generator-ibm-java to generate a liberty app I can't start it on ppc64le.
It fails with:
[INFO] CWWKM2001I: Invoke command is [/opt/ibm/wlp/bin/server, create, defaultServer].
[INFO] JVMJ9TI001E Agent library am_ibm_16 could not be opened (libam_ibm_16.so: cannot open shared object file: No such file or directory)
[INFO] JVMJ9VM015W Initialization error for library j9jvmti29(-3): JVMJ9VM009E J9VMDllMain failed
The cause seems to be the apm agent library that is now loaded:
generator-ibm-cloud-enablement/generators/dockertools/templates/java/Dockerfile.template
Line 20 in 3e16fda
| JVM_ARGS="$JVM_ARGS -agentlib:am_ibm_16=defaultServer -Xbootclasspath/p:/opt/ibm/wlp/usr/extension/liberty_dc/toolkit/lib/bcm-bootstrap.jar -Xverbosegclog:/logs/gc.log,1,10000 -verbosegc -Djava.security.policy=/opt/ibm/wlp/usr/extension/liberty_dc/itcamdc/etc/datacollector.policy -Dliberty.home=/opt/ibm/wlp" |
The library loaded by
-agentlib:am_ibm_16=defaultServer is a 64 bit intel binary:
$ file libam_ibm_16.so
libam_ibm_16.so: ELF 64-bit LSB shared object, x86-64, version 1 (SYSV), dynamically linked, BuildID[sha1]=7f85911c0dc37ea4a0826f8119e7e7dd282152b5, not stripped
It looks like installUtility install --acceptLicense apmDataCollector-7.4 only installs an intel binary regardless of architecture. This prevents us starting the application on ppc64le.
All of the docker images are multi-arch and liberty is Java code so if I disable that in the docker file then the application starts without problem on ppc64le.
Metadata
Metadata
Assignees
Labels
No labels