Summary

AppDynamics has discovered that instrumentation of specific lambda constructs in Java 8 can trigger errors in the Java runtime, such as NoClassDefFoundError.

Affected Software

This issue affects Java Agents supporting Java 8 (from 3.9) to 4.1.7.

As of 4.1.8 and 4.2, instrumentation of lambda instances is disabled.

Impact

Prior to 4.1.7, NoClassDefFoundError exceptions may manifest in the user application.

Following 4.1.8 or 4.2, applications which relied on lambda instrumentation will no longer be able to use this instrumentation, preventing risk of impacting application behavior. This is a JDK bug, and is being tracked as JDK-8145964.

Workaround

For applications relying on prior lambda instrumentation, other means of custom configuration must be used to provide equivalent visibility.