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

Drools spawning a lot of JIT threads

XMLWordPrintable

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

      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.

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

                Created:
                Updated:
                Resolved: