Uploaded image for project: 'Log4j 2'
  1. Log4j 2
  2. LOG4J2-296

Wasted work in FlumePersistentManager.createManager

    Details

      Description

      The problem appears in Log4j 2.0-beta7 and in revision 1497930. I
      attached a one-line patch that fixes it.

      In method "FlumePersistentManager.createManager", the loop over
      "properties.entrySet()" should break immediately after "key" is set
      the first time to "entry.getValue()". I don't think "key" is set a
      second time (and therefore all future iterations are not useful), but
      if it is, then there is a problem in the implementation: when the loop
      exits, "key" would be set to the last value of "entry.getValue()" that
      meets some condition; however "properties.entrySet()" is a Set and
      therefore the order of iterating it is non-deterministic, i.e., the
      implementation should not rely on which the "last value" is.

        Attachments

        1. patch.diff
          0.7 kB
          Adrian Nistor

          Activity

            People

            • Assignee:
              garydgregory Gary Gregory
              Reporter:
              adriannistor Adrian Nistor
            • Votes:
              0 Vote for this issue
              Watchers:
              2 Start watching this issue

              Dates

              • Created:
                Updated:
                Resolved: