Uploaded image for project: 'Drools'
  1. Drools
  2. DROOLS-473

Drools spawning a lot of JIT threads

    XMLWordPrintable

Details

    • Enhancement
    • Resolution: Done
    • Major
    • 6.1.0.Beta4
    • 5.5.0.Final
    • None
    • None

    Description

      MvelConstraint submits JIT tasks to an Executor once it has been evaluated enough times, but that Executor created by ExecutorProviderImpl is a basic CachedThreadPool which can create an unbounded number of threads (though they die after idling for a minute).

      Firing a lot of rules quickly can create several hundreds threads. If you have several JVMs on the same machine processing the same kind of load, it can saturate the OS and result in errors as the JVMs cannot create native threads anymore.

      The maximum size of the thread pool should probably be limited to a more reasonable default, maybe with a configurable value.

      Attachments

        Activity

          People

            mfusco@redhat.com Mario Fusco
            fpavageau Frank Pavageau (Inactive)
            Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: