Сиддхи, логическое И с внутри, неожиданно выполняет обратный вызов

Используя Siddhi CEP 3.1.2 в качестве автономной библиотеки, я пытаюсь выяснить, как правильно запускать обработчик обратного вызова при ряде условий.

  1. Два события соединены логическим И

    a AND b

С учетом вышеизложенного я обнаружил, что если я предоставлю оба события, тогда я могу запустить обработчик обратного вызова, однако я также видел, что если я впоследствии предоставлю либо a, либо b, то обработчик также запускается. Я не ожидал, что последнее произойдет, так как предполагал, что совпадения не будет из-за предыдущего выполнения обработчика ... Есть ли способ очистить потоки после успешного совпадения?

  1. Два события, соединенных логическим И, включая внутреннее.

    a AND b within 5 sec

Я также обнаружил, что во втором случае опция «внутри» игнорируется. Обратный вызов запускается независимо от промежутка времени между событиями a и b.

Я неправильно понял документацию Сиддхи? Буду признателен за любые рекомендации по этому поводу. Спасибо


person usEr19792016    schedule 09.01.2017    source источник


Ответы (1)


Это две ошибки, основанные на нашем тестировании и исправленные с помощью PR № 436.

Следующие тестовые примеры добавлены для обеспечения правильного поведения:

  1. Тест A and B
  2. Тест every (A and B)
  3. Тест A -> B and C within 1 sec

Вы получите эти исправления в следующем выпуске и далее, иначе вы можете собрать Сиддхи из исходного кода и протестировать их прямо сейчас. Вот сообщение в блоге о том, как создавать и использовать Сиддхи из исходного кода: Ранний доступ к Siddhi 4.0.0.

person Gobinath    schedule 02.07.2017