Uploaded image for project: 'JBoss BPMS Platform'
  1. JBoss BPMS Platform
  2. RHBPMS-4859

[GSS](6.4.z) GlobalTimerService.timerJobsPerSession grows without bounds

    XMLWordPrintable

Details

    • Bug
    • Resolution: Done
    • Major
    • 6.4.6
    • 6.4.4
    • jBPM Core
    • None
    • RHEL 6.8
      Oracle JDK 1.8.0_91l64
      EAP 7.0.4
      BPMS 6.4.1
      Oracle DB 11g

    • CR1
    • Hide

      Attached GlobalTimerServiceVolumeTest and IntermediateCatchEventTimerCycleWithHT3.bpmn2

      Run the Test, which used Quartz timer service, and starts an endless series of processes with 1D timers.

      GlobalTimerService shows growing retained heap over time, leading to eventual OOM

      Show
      Attached GlobalTimerServiceVolumeTest and IntermediateCatchEventTimerCycleWithHT3.bpmn2 Run the Test, which used Quartz timer service, and starts an endless series of processes with 1D timers. GlobalTimerService shows growing retained heap over time, leading to eventual OOM

    Description

      When running a process with a large number of long-lived timers and a large number of sessions, the GlobalTimerService.timerJobsPerSession map appears to grow without limit and dominates the Heap until an OOM condition occurs. Each job handle keeps a live reference to the Process Session, and takes up approximately 232kb. This adds up quickly when scaling to thousands of concurrent processes.

      Since the timers are long-lived, the sessions don't need to remain in memory. Is there any way to have the GlobalTimerService purge the mapping periodically? This is especially helpful when using external timer management, such as Quartz or EJB based timers, since the engine does not need to keep the timer data around to ensure proper firing.

      Attachments

        Issue Links

          Activity

            People

              swiderski.maciej Maciej Swiderski (Inactive)
              djeremiah David Murphy (Inactive)
              Marian Macik Marian Macik
              Marian Macik Marian Macik
              Votes:
              0 Vote for this issue
              Watchers:
              3 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved: