Uploaded image for project: 'OpenNMS'
  1. OpenNMS
  2. NMS-9172

Fix the execution of Drools rules when using streaming (CEP, Temporal Reasoning)

    Details

      Description

      Normally, the event processing mode defaults to cloud. This works when using a "discrete" triggering method (i.e. for example, trigger the execution of the rules when an OpenNMS events comes in).

      In order to use built-in feature of Drools to advanced and complex event processing (i.e. Drools Fusion, CEP, Temporal Reasoning), you have to use stream for the event processing mode. Then, instead of calling fireAllRules to trigger the execution of the rules, it is advised to have a dedicated thread that runs fireUnitHalt.

      This thread will be running until the halt method is called from the session. In theory, as the session lives while OpenNMS is running there is no need to call it (for the same reason we don't need to call dispose). These methods are useful if we want, for example, persist the current state of the working memory on disk.

        Attachments

          Activity

            People

            • Assignee:
              agalue Alejandro Galue
              Reporter:
              agalue Alejandro Galue
            • Votes:
              0 Vote for this issue
              Watchers:
              2 Start watching this issue

              Dates

              • Created:
                Updated:
                Resolved: