Possibility of stack overflow with IBM JVM and class loading delegation

Description

I saw similar problems in the log but related to the reflectASM generated classes. We need to have a protection here that we never end in the loop. We can solve this with the thread local in the HookDelegationSensor so that we never enter the same method twice with same class name. It's also interesting why our class loader can not load the class needed here.

The class names are rocks.inspectit...ConstructorAcess but our class loader can not load it as they are not there. These are generated by the reflect asm

Environment

IBM JVM V9

Activity

Show:
Technical User
November 25, 2016, 10:25 AM

SUCCESS: Integrated in

inspectIT - Integration #227
INSPECTIT-2248: protection again stack overflow in class loading (patrice.bouillet: 0d02f0bf1c182a4a8b6c2574cc1f510f97ab3781)

  • (edit) inspectit.agent.java/src/test/java/rocks/inspectit/agent/java/sensor/method/special/ClassLoadingDelegationHookTest.java

  • (edit) inspectit.agent.java/src/main/java/rocks/inspectit/agent/java/sensor/method/special/ClassLoadingDelegationHook.java

  • (add) inspectit.agent.java/src/main/java/rocks/inspectit/agent/java/util/ClassLoadingUtil.java

  • (edit) inspectit.agent.java/src/main/java/rocks/inspectit/agent/java/javaagent/JavaAgent.java

Ivan Senic
November 9, 2016, 1:23 PM

Updated with new solution, advised by .

Ivan Senic
November 8, 2016, 11:53 AM

Same problem with the reflectASM classes as said:

Fixed

Assignee

Ivan Senic

Reporter

Ivan Senic

Integrator

Patrice Bouillet