Basically, we still don't do RETRANSFORMATION.
The code in master:
agentBuilder.type(pluginFinder.buildMatch())
.transform(new Transformer(pluginFinder))
.with(AgentBuilder.RedefinitionStrategy.RETRANSFORMATION)
.with(new Listener())
.installOn(instrumentation);
Just suggesting:
If not using RETRANSFORMATION, the config should be
1.
AgentBuilder.RedefinitionStrategy.REDEFINITION
AgentBuilder.RedefinitionStrategy.DISABLED
This code explicit disabled RETRANSFORMATION so that no log about
retransforming a class loaded is acceptable.
2.
AgentBuilder.RedefinitionStrategy.RETRANSFORMATION
.disableClassFormatChanges()
This code enable RETRANSFORMATION.we should also activate
.disableClassFormatChanges() so that we can know why the RETRANSFORMATION fails
in the listener#onError
It is useful for plugin developer for troubleshooting.
See https://github.com/raphw/byte-buddy/issues/237#issuecomment-269348271