Проблемы с узлом PROPAGATE и Collector в IIB

Я пытаюсь отправить несколько коллекций на один и тот же входной терминал узла сборщика в моем потоке сообщений, как показано ниже:

поток сообщений

Терминал «out1» переходит на входной терминал на Collector, называемый «in1», а «out2» - на входной терминал с именем «env». Мне нужен только один in1 и один env в коллекции вместе. Всего может быть до 7 коллекций.

В ESQL есть цикл FOR, выполняющий итерацию по коллекции и основанный на некоторых критериях, ПРОПАГАТИРОВАТЬ сообщение на in1 и env или нет. Операторы распространения находятся внутри этого цикла FOR.

Это конфигурация узла Colelctor. Количество сообщений установлено на «1» для обоих входных терминалов, поскольку мне нужны только один in1 и один env в коллекции.

Конфигурация узла сборщика

Проблема, с которой я сталкиваюсь, заключается в следующем для сценария с двумя коллекциями, которые должны быть созданы:

  1. Сообщение1 распространяется на out1 / in1
  2. Сообщение1 распространяется на out2 / env
  3. Сообщение2 распространяется на out1 / in1
  4. Вся обработка прекращается. Flow простаивает, вероятно, истекший срок.
  5. Сообщение2 распространяется на out2 / env.

Похоже, проблема в узле Collector, скорее всего, в настройках конфигурации и в том, как я отправляю сообщения на входные терминалы. Кто-нибудь, кто знаком с использованием узла Collector, видит что-нибудь очевидное, что можно сделать, чтобы исправить №4 выше?


person gjw80    schedule 07.06.2018    source источник


Ответы (1)


Я полагаю, у вас есть вычислительный узел, работающий в режиме транзакции. Узел Collector не поддерживает получение более 1 сообщения от одной транзакции. Цитата из центра знаний МИБ:

Если транзакция распространяет более одного входного сообщения для узла сборщика, узел сборщика ведет себя не так, как ожидалось.

Ознакомьтесь с первым примечанием: https://www.ibm.com/support/knowledgecenter/SSMKHH_10.0.0/com.ibm.etools.mft.doc/ac37820_.htm

То, как вы пытаетесь использовать узел Collector, довольно странно. Кажется, вы генерируете сообщения в вычислительном узле, так почему бы уже не сгенерировать их, сгруппированные вместе в одном дереве сообщений?

person Attila Repasi    schedule 10.06.2018