Transacionalidade em Mediações
É possível configurar uma rotina de tratamento de mediação para executar dentro de uma transação global.
- A mediação e o roteamento de mensagens devem ser coordenados em uma única transação.
- Várias rotinas de tratamento de uma lista de rotinas de tratamento de mediações devem ser coordenadas em uma única transação.
Definir a propriedade Transação Global assegura a integridade transacional entre uma mediação que acessa os recursos de propriedade de outros gerenciadores de recursos e o mecanismo de sistema de mensagens.
Um transação global abrange todas as operações de mediação executadas dentro do barramento enquanto durar a mediação. A transação global é encerrada quando a mediação completa seu processamento.
Se a propriedade Transação global estiver definida como Verdadeiro ou Falso, uma mediação executará todas as suas operações em uma mensagem ou em nenhuma delas.
Se uma transação de mediação executar rollback, todas as alterações transacionais também terão rollback. Quando a transação executar rollback, a mensagem mediada permanecerá na parte pré-mediada do destino de barramento, tornando-se elegível para ser mediada novamente. A contagem de reentrega designada a uma mensagem aumenta cada vez que uma transação da mediação executa rollback. Se a contagem de reentrega exceder o limite configurado para o destino do barramento, a mensagem será enviada ao destino de exceção.
Você especifica o contexto transacional de um manipulador de mediação configurando a propriedade Transação global como True usando o console administrativo. O valor padrão é Falso e uma transação global não foi iniciada. Você também pode configurar operações individuais das mensagens para execução fora da unidade global de trabalho.