Uploaded image for project: 'Oozie'
  1. Oozie
  2. OOZIE-3409

Oozie Server : Memory leak in EL evaluation

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Closed
    • Major
    • Resolution: Fixed
    • 5.1.0
    • 5.2.0
    • None
    • None

    Description

      I have noticed that there is a potential memory leak in the Oozie server due to one of its dependencies - commons-el:commons-el:1.0. Our oozie servers have been running out of memory occasionally. It happens more often when we have more activity. Upon analysis of the heap dump, it seems that the culprit here is the org.apache.commons.el.ExpressionEvaluatorImpl from commons-el which is used in the Oozie server through org.apache.oozie.util.ELEvaluator [1] . ExpressionEvaluatorImpl uses a static Map [2] to cache the EL evaluations. This map never gets cleared, eventually taking up all the memory. So, in an environment with heavy usage and long running oozie servers, this would lead to an OOM. The configurations for workflow actions we have are possibly larger than normal which is worsening the situation as the Map has to maintain larger strings.

      1. https://github.com/apache/oozie/blob/release-5.1.0/core/src/main/java/org/apache/oozie/util/ELEvaluator.java#L143
      2. http://svn.apache.org/viewvc/commons/dormant/el/trunk/src/java/org/apache/commons/el/ExpressionEvaluatorImpl.java?view=markup#l94

      Attachments

        1. OOZIE-3409-05.patch
          23 kB
          Andras Salamon
        2. OOZIE-3409-04.patch
          22 kB
          Andras Salamon
        3. OOZIE-3409-03.patch
          18 kB
          Andras Salamon
        4. OOZIE-3409-02.patch
          18 kB
          Andras Salamon
        5. OOZIE-3409-01.patch
          8 kB
          Andras Salamon

        Issue Links

          Activity

            People

              asalamon74 Andras Salamon
              praneeth.varma Praneeth
              Votes:
              0 Vote for this issue
              Watchers:
              5 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved: