Uploaded image for project: 'JBRULES'
  1. JBRULES
  2. JBRULES-2204

Exception not rethrown by AbstractWorkingMemory.executeQueuedActions()

This issue belongs to an archived project. You can view it, but you can't modify it. Learn more

    XMLWordPrintable

Details

    Description

      AbstractWorkingMemory.executeQueuedActions() catches exceptions thrown within calls to action.execute() (line 1486).

      It then tests to see if the exception is a RuntimeDroolsException and rethrows it if it is. However, if it is not, it simply does a printStackTrace() on the exception and does not re-throw it. This is a problem because SplitInstance throws an IllegalArgumentException on line 73. This is then caught and gobbled by the catch clause starting on line 1487 of AbstractWorkingMemory.java.

      The result is that any service or application hosting the Drools runtime will never see this exception. What looks to the user like a clean (albeit overly shortened) rules session has in fact thrown an error, but it is not visible to the user or the owning service. It is therefore very difficult to diagnose why the rules and/or flows are not doing what they should.

      Attachments

        Activity

          People

            etirelli@redhat.com Edson Tirelli
            temurphy_jira Tom Murphy (Inactive)
            Archiver:
            rhn-support-ceverson Clark Everson

            Dates

              Created:
              Updated:
              Resolved:
              Archived:

              PagerDuty