Exceções ao Lidar com Mensagens Desconhecidas e de Tempo Limite

Quando mensagens de tempo limite ou mensagens desconhecidas a partir de processamento de tempo limite desconhecido são produzidas a partir de um nó AggregateReply , eles se originam de uma fila interna e não de um nó MQInput . Esse comportamento afeta como a manipulação de erro deve ser executada.

Se uma mensagem que é enviada para baixo o encadeamento de tempo limite causar uma exceção, a mensagem retrocede para o nó AggregateReply e é enviada para o terminal Catch. Se este terminal não for anexado ou se uma exceção ocorrer durante o processamento da mensagem, o tempo limite será retornado para a fila interna e será reprocessado. Potencialmente, esse comportamento pode levar a um loop infinito, que pode ser parado implementando uma versão do fluxo de mensagens que corrige o problema.

Para evitar esse loop infinito, tome as seguintes ações.
  • Conecte o terminal Catch a um conjunto de nós que manipule erros.
  • Certifica-se de que os nós de manipulação de erros não podem lançar uma exceção garantindo que eles executem operações muito simples; por exemplo, convertendo a mensagem em um BLOB, em seguida, escrevendo-a para uma fila, ou adicionando nós extra TryCatch .

O terminal de falhas do nó AggregateReply não é usado atualmente e as mensagens não são passadas para este terminal.