| Тип | Причина | Пример |
| Потеря данных в хранилище. | Падение ненадежного (например InMemory) хранилища. | Потеря счетчика сигналов. |
| Потеря сигнала. | Отправка TriggerEvent без sql TransactionalOutbox. | - TriggerEvent не был отправлен (no gracefull shutdown)
-> Счетчик не был изменен. -> Зависание обработки. |
| Ложный или дублирующий сигнал. | Обработка TriggerEvent без sql TransactionalInbox. | TriggerEvent был обработан более одного раза (Гарантии доставки). - Отвал и переподключение consumer. Транзакция БД закомичена, а сообщение брокера нет.
- Дублирование сообщений на отправке.
- Проблемы с сетью (доставка подтверждения отправки).
- Падение сервиса после публикации сообщения (без фиксации).
-> Счетчик был уменьшен более чем на 1. -> Ложное, преждевременное срабатывание триггера. |