Error 'A timer for thread already exists in the list' when two agentpath parameters added to JVM


Overview of the Issue

This issue occurs in the following circumstances:

  1. An organization installs the VF Agent on a Java Application
  2. When adding the JAVA_OPTS to the application, the agentpath agentpath:/path/to/libJVMTIAgent.so is added twice
  3. The following logging is printed in the Application’s logging
AsyncGetCallTrace is available
Adding [/opt/vfunction/agent/jni.jar] to boot class path
Adding [/opt/vfunction/agent/runtime-agent-dependencies.jar] to system class path
vFunction native agent version 1.0.b75e7c21b3c99a793a0f08a5600aec005b74fb6b successfully loaded
JVM type is HotSpot
a timer for thread 523 already exists in the list!!!
thrdTrkThreadRun	objectData already in set
a timer for thread 524 already exists in the list!!!
thrdTrkThreadRun	objectData already in set
a timer for thread 525 already exists in the list!!!
thrdTrkThreadRun	objectData already in set

Steps to Resolve the Issue

  1. Remove the second agentpath flag from the Java Options
  2. Restart the Application