-
Bug
-
Resolution: Done
-
Major
-
1.5.1
-
None
A call to Instrumentation.retransformClasses() can fail with a java.lang.VerifyError as well as with the advertised UnmodifiableClassException. If this happens in the agent listener thread when handling a submit request will cause the thread to die and will leave the Submit client hanging. The Retransformer code should catch the VerifyError and report a failure to retransform.
It is somewhat tricky to know what to do in the catch handler since there is no clear information to determine what has and has not been retransformed. This may mean that some rules have been added/removed without being correctly injected/uninjected. So, it represents a serious failure. However, at the very least catching and reporting suc h errors will mean that the agent can still be communicated with and the submit client allowed to terminate.