You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Hey all,
I am trying to use tamiflex poa with OpenJ9 JDK, but poa is crashing.
For java version:
$ java -version
openjdk version "1.8.0_282"
OpenJDK Runtime Environment (build 1.8.0_282-8u282-b08-0ubuntu1~20.04-b08)
OpenJDK 64-Bit Server VM (build 25.282-b08, mixed mode)
On running poa, we get:
$ java -javaagent:PATH/poa-trunk.jar
============================================================
TamiFlex Play-Out Agent Version trunk
Loaded properties from PATH/.tamiflex/poa.properties
Transforming class: java/util/LinkedList$ListItr ::: classBeingRedefined: null
Affected Classes: [class java.lang.Class, class java.lang.Class, class java.lang.reflect.Constructor, class java.lang.reflect.Field, class java.lang.reflect.Field, class java.lang.reflect.Method]
Transforming class: java/lang/Class ::: classBeingRedefined: class java.lang.Class
Transformed Class: java/lang/Class
Transforming class: java/lang/Class ::: classBeingRedefined: class java.lang.Class
Transformed Class: java/lang/Class
Transforming class: java/lang/reflect/Constructor ::: classBeingRedefined: class java.lang.reflect.Constructor
Transformed Class: java/lang/reflect/Constructor
Transforming class: java/lang/reflect/Field ::: classBeingRedefined: class java.lang.reflect.Field
Transformed Class: java/lang/reflect/Field
Transforming class: java/lang/reflect/Field ::: classBeingRedefined: class java.lang.reflect.Field
Transformed Class: java/lang/reflect/Field
Transforming class: java/lang/reflect/Method ::: classBeingRedefined: class java.lang.reflect.Method
Transformed Class: java/lang/reflect/Method
============================================================
Usage: java [-options] class [args...]
(to execute a class)
or java [-options] -jar jarfile [args...]
(to execute a jar file)
where options include:
-d32 use a 32-bit data model if available
-d64 use a 64-bit data model if available
-server to select the "server" VM
-zero to select the "zero" VM
-dcevm to select the "dcevm" VM
The default VM is server,
because you are running on a server-class machine.
-cp <class search path of directories and zip/jar files>
-classpath <class search path of directories and zip/jar files>
A : separated list of directories, JAR archives,
and ZIP archives to search for class files.
-D<name>=<value>
set a system property
-verbose:[class|gc|jni]
enable verbose output
-version print product version and exit
-version:<value>
Warning: this feature is deprecated and will be removed
in a future release.
require the specified version to run
-showversion print product version and continue
-jre-restrict-search | -no-jre-restrict-search
Warning: this feature is deprecated and will be removed
in a future release.
include/exclude user private JREs in the version search
-? -help print this help message
-X print help on non-standard options
-ea[:<packagename>...|:<classname>]
-enableassertions[:<packagename>...|:<classname>]
enable assertions with specified granularity
-da[:<packagename>...|:<classname>]
-disableassertions[:<packagename>...|:<classname>]
disable assertions with specified granularity
-esa | -enablesystemassertions
enable system assertions
-dsa | -disablesystemassertions
disable system assertions
-agentlib:<libname>[=<options>]
load native agent library <libname>, e.g. -agentlib:hprof
see also, -agentlib:jdwp=help and -agentlib:hprof=help
-agentpath:<pathname>[=<options>]
load native agent library by full pathname
-javaagent:<jarpath>[=<options>]
load Java programming language agent, see java.lang.instrument
-splash:<imagepath>
show splash screen with specified image
See http://www.oracle.com/technetwork/java/javase/documentation/index.html for more details.
============================================================
TamiFlex Play-Out Agent Version trunk
Found no new log entries.
Dumped no new classes.
Log file written to: PATH/refl.log
============================================================
But for java version:
$ java -version
openjdk version "1.8.0_292"
OpenJDK Runtime Environment (build 1.8.0_292-b10)
Eclipse OpenJ9 VM (build openj9-0.26.0, JRE 1.8.0 Linux amd64-64-Bit Compressed References 20210421_1000 (JIT enabled, AOT enabled)
OpenJ9 - b4cc246d9
OMR - 162e6f729
JCL - 2a5e268814 based on jdk8u292-b10)
We get:
$ JAVA_HOME=PATH PATH/java -javaagent:poa-trunk.jar
============================================================
TamiFlex Play-Out Agent Version trunk
Loaded properties from PATH/.tamiflex/poa.properties
WARNING: Cannot dump class com.ibm.jit.JITHelpers
Transforming class: java/util/LinkedList$ListItr ::: classBeingRedefined: null
Transformed Class: java/util/LinkedList$ListItr
Affected Classes: [class java.lang.Class, class java.lang.Class, class java.lang.reflect.Constructor, class java.lang.reflect.Field, class java.lang.reflect.Field, class java.lang.reflect.Method]
Transforming class: java/lang/Class ::: classBeingRedefined: class java.lang.Class
Transformed Class: java/lang/Class
Transforming class: java/lang/Class ::: classBeingRedefined: class java.lang.Class
Transformed Class: java/lang/Class
Transforming class: java/lang/reflect/Constructor ::: classBeingRedefined: class java.lang.reflect.Constructor
Transformed Class: java/lang/reflect/Constructor
Transforming class: java/lang/reflect/Field ::: classBeingRedefined: class java.lang.reflect.Field
Transformed Class: java/lang/reflect/Field
Transforming class: java/lang/reflect/Field ::: classBeingRedefined: class java.lang.reflect.Field
Transformed Class: java/lang/reflect/Field
Transforming class: java/lang/reflect/Method ::: classBeingRedefined: class java.lang.reflect.Method
Transformed Class: java/lang/reflect/Method
Transforming class: java/lang/VerifyError ::: classBeingRedefined: null
Transformed Class: java/lang/VerifyError
Exception in thread "main" Transforming class: java/util/IdentityHashMap ::: classBeingRedefined: null
Transformed Class: java/util/IdentityHashMap
java/lang/reflect/InvocationTargetException
at sun/reflect/NativeMethodAccessorImpl.invoke0 (NativeMethod:4294967295)
at sun/reflect/NativeMethodAccessorImpl.invoke (NativeMethodAccessorImpl.java:62)
at sun/reflect/DelegatingMethodAccessorImpl.invoke (DelegatingMethodAccessorImpl.java:43)
at java/lang/reflect/Method.invoke (Method.java:498)
at sun/instrument/InstrumentationImpl.loadClassAndStartAgent (InstrumentationImpl.java:401)
at sun/instrument/InstrumentationImpl.loadClassAndCallPremain (InstrumentationImpl.java:416)
Fatal error: processing of -javaagent failed
Contents of poa.properties file:
dontDumpClasses = false
dontNormalize = false
count = false
useDeclaredTypes = false
verbose = false
#outDir = /tmp/out
#NOTE: out of the following instruments, the "Booster" only supports the first four!
transformations =\
de.bodden.tamiflex.playout.transformation.clazz.ClassForNameTransformation \
de.bodden.tamiflex.playout.transformation.clazz.ClassNewInstanceTransformation \
de.bodden.tamiflex.playout.transformation.constructor.ConstructorNewInstanceTransformation \
de.bodden.tamiflex.playout.transformation.method.MethodInvokeTransformation \
de.bodden.tamiflex.playout.transformation.field.FieldGetTransformation \
de.bodden.tamiflex.playout.transformation.field.FieldSetTransformation \
As we can see, in the openj9 jdk tamiflex is transforming additional classes. This is probably the source of this crash.
I am willing to work on this issue. Any guidance/suggestion on how to approach this would be very helpful.
The text was updated successfully, but these errors were encountered:
Hey all,
I am trying to use tamiflex poa with OpenJ9 JDK, but poa is crashing.
For java version:
On running poa, we get:
But for java version:
We get:
Contents of poa.properties file:
As we can see, in the openj9 jdk tamiflex is transforming additional classes. This is probably the source of this crash.
I am willing to work on this issue. Any guidance/suggestion on how to approach this would be very helpful.
The text was updated successfully, but these errors were encountered: