ADDITIONAL SYSTEM INFORMATION :
http://bit.ly/system-info
A DESCRIPTION OF THE PROBLEM :
Running Instrumentation.retransformClasses() for Spring Boot application throws InternalError on some classes.
For example:
org.springframework.boot.autoconfigure.cache.RedisCacheConfiguration
org.springframework.boot.autoconfigure.cache.JCacheCacheConfiguration
org.springframework.boot.autoconfigure.cache.InfinispanCacheConfiguration
org.springframework.boot.autoconfigure.jdbc.HikariDriverConfigurationFailureAnalyzer
The issue is also reproducible on early access versions of 12 and 13.
STEPS TO FOLLOW TO REPRODUCE THE PROBLEM :
I've prepared simple demo project to illustrate this issue.
There are only main class and test class.
Test should be run.
It will package project to jar and execute it as separate process.
Then it attaches agent to this process where it invokes Instrumentation.transformClasses() for all loaded classes one by one.
EXPECTED VERSUS ACTUAL BEHAVIOR :
EXPECTED -
Not throwing InternalError or showing understandable message of error.
ACTUAL -
Throwing InternalError
---------- BEGIN SOURCE ----------
http://bit.ly/instrumentation-demo
---------- END SOURCE ----------
FREQUENCY : always
http://bit.ly/system-info
A DESCRIPTION OF THE PROBLEM :
Running Instrumentation.retransformClasses() for Spring Boot application throws InternalError on some classes.
For example:
org.springframework.boot.autoconfigure.cache.RedisCacheConfiguration
org.springframework.boot.autoconfigure.cache.JCacheCacheConfiguration
org.springframework.boot.autoconfigure.cache.InfinispanCacheConfiguration
org.springframework.boot.autoconfigure.jdbc.HikariDriverConfigurationFailureAnalyzer
The issue is also reproducible on early access versions of 12 and 13.
STEPS TO FOLLOW TO REPRODUCE THE PROBLEM :
I've prepared simple demo project to illustrate this issue.
There are only main class and test class.
Test should be run.
It will package project to jar and execute it as separate process.
Then it attaches agent to this process where it invokes Instrumentation.transformClasses() for all loaded classes one by one.
EXPECTED VERSUS ACTUAL BEHAVIOR :
EXPECTED -
Not throwing InternalError or showing understandable message of error.
ACTUAL -
Throwing InternalError
---------- BEGIN SOURCE ----------
http://bit.ly/instrumentation-demo
---------- END SOURCE ----------
FREQUENCY : always
- relates to
-
JDK-5092850 RedefineClasses causes VerifyError
- Resolved