Uploaded image for project: 'Red Hat Process Automation Manager'
  1. Red Hat Process Automation Manager
  2. RHPAM-3936

EJBTimerScheduler.localCache contains entries from already fired timers

    XMLWordPrintable

Details

    • Bug
    • Status: Verified (View Workflow)
    • Major
    • Resolution: Done
    • 7.11.1.GA
    • 7.12.1.GA
    • jBPM Core
      • one or more kie-server nodes
      • EJB timers with DB persistence
      • -Dorg.jbpm.ejb.timer.local.cache=true
    • CR1
      • Create a process with a timer (eg. 1m)
      • Create a number of instances of this process
      • Wait for the timer to fire
      • Check the EJBTimerScheduler.localCache map, it should be empty
    • Release Notes
    • 2021 Week 40-42 (from Oct 4), 2021 Week 43-45 (from Oct 25), 2021 Week 46-48 (from Nov 15), 2021 Week 49-51 (from Dec 6th), 2022 Week 02-04 (from Jan 10)
    • ?

    Description

      We have enabled the EJBTimerScheduler.localCache for performance reasons. While working with a high number of timers, we noticed an increase in memory usage. Even after the timers are fired, entries from EJBTimerScheduler.localCache are not removed:

      Class Name                                                                          | Shallow Heap | Retained Heap
      -------------------------------------------------------------------------------------------------------------------
      org.jbpm.services.ejb.timer.EJBTimerScheduler @ 0xb39e6070                          |           24 |   180,538,352
      |- <class> class org.jbpm.services.ejb.timer.EJBTimerScheduler @ 0xb3ff6988         |           32 |         3,352
      |- utx org.wildfly.transaction.client.LocalUserTransaction @ 0xb2ec5848             |           16 |            16
      |- timerService org.jboss.as.ejb3.timerservice.TimerServiceImpl @ 0xb3089378        |           72 |        65,824
      |- localCache java.util.concurrent.ConcurrentHashMap @ 0xb39e6088                   |           64 |   180,538,328
      |  |- <class> class java.util.concurrent.ConcurrentHashMap @ 0xae82b1e8 System Class|          136 |           648
      |  |- table java.util.concurrent.ConcurrentHashMap$Node[16384] @ 0xc12ea8e0         |       65,552 |   180,538,264
      |  |  |- <class> class java.util.concurrent.ConcurrentHashMap$Node[] @ 0xae827d88   |            0 |             0
      |  |  |- [7082] java.util.concurrent.ConcurrentHashMap$Node @ 0xb4eeea50            |           32 |        18,072
      |  |  |- [6061] java.util.concurrent.ConcurrentHashMap$Node @ 0xb4efd370            |           32 |        18,072
      |  |  |- [11097] java.util.concurrent.ConcurrentHashMap$Node @ 0xb4fe85c0           |           32 |        18,072
      |  |  |- [11494] java.util.concurrent.ConcurrentHashMap$Node @ 0xb4ff11e0           |           32 |        18,072
      |  |  |- [1921] java.util.concurrent.ConcurrentHashMap$Node @ 0xb4ff68d0            |           32 |        36,144
      |  |  '- Total: 25 of 7,448 entries; 7,423 more                                     |              |              
      -------------------------------------------------------------------------------------------------------------------
      

      We expect the timer entries to be removed once they have fired.

      Attachments

        Issue Links

          Activity

            People

              elguardian@gmail.com Enrique González Martínez (Inactive)
              rhn-support-mputz Martin Weiler
              Antonio Fernandez Alhambra Antonio Fernandez Alhambra
              Votes:
              0 Vote for this issue
              Watchers:
              6 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved: