Uploaded image for project: 'Commons Logging'
  1. Commons Logging
  2. LOGGING-146

LogFactory.nullClassLoaderFactory is not properly synchronized

    Details

    • Type: Bug
    • Status: Closed
    • Priority: Major
    • Resolution: Fixed
    • Affects Version/s: 1.1.1
    • Fix Version/s: 1.1.2
    • Labels:
      None

      Description

      Not all accesses to the protected static mutable field LogFactory.nullClassLoaderFactory are synch. using the same lock.

      This is necessary to ensure safe publication of mutable fields.

      As far as I can tell, the field is only required because a Hashtable cannot hold a null key. So it's not clear why the field is protected rather than private.

      Also, it ought to be possible to replace the field with a dummy key object which can then be used in the Hashtable. That would simplify the code.
      However, any subclasses that relied on the field contents might break.

      If LogFactory is not intended to be part of the public API, then the field could be replaced by the dummy key approach.

        Attachments

          Activity

            People

            • Assignee:
              Unassigned
              Reporter:
              sebb@apache.org Sebb
            • Votes:
              0 Vote for this issue
              Watchers:
              0 Start watching this issue

              Dates

              • Created:
                Updated:
                Resolved: