Class LostLoggerDueToWeakReference

  • All Implemented Interfaces:
    Detector, Priorities, org.apache.bcel.classfile.Visitor

    public class LostLoggerDueToWeakReference
    extends OpcodeStackDetector
    We found a problem with the new OpenJDK that everyone is now using to compile and run java code. In particular, the java.util.logging.Logger behavior has changed. Instead of using strong references, it now uses weak references internally. That's a reasonable change, but unfortunately some code relies on the old behavior - when changing logger configuration, it simply drops the logger reference. That means that the garbage collector is free to reclaim that memory, which means that the logger configuration is lost.
    • Field Detail

      • namesOfSetterMethods

        final java.util.HashSet<java.lang.String> namesOfSetterMethods
      • sawGetLogger

        int sawGetLogger
      • loggerEscaped

        boolean loggerEscaped
      • loggerImported

        boolean loggerImported
    • Constructor Detail

      • LostLoggerDueToWeakReference

        public LostLoggerDueToWeakReference​(BugReporter bugReporter)