| Предыдущий | Следующий |
| STATUS_TRANSACTION_NO_MATCH | STATUS_TRANSACTION_INVALID_ID |
STATUS_TRANSACTION_RESPONDED
Что означает STATUS_TRANSACTION_RESPONDED
STATUS_TRANSACTION_RESPONDED означает, что транспортная транзакция уже получила ответ или была завершена, поэтому повторный ответ для той же операции недопустим.
Что проверить
- Сохраните идентификатор транзакции или UOW, тип запроса, конечную точку и время первого ответа.
- Проверьте гонку между завершением, отменой и повторной обработкой одного запроса.
- Убедитесь, что после переподключения новый запрос не был ошибочно связан с транзакцией предыдущего соединения.
- Проверьте, не обрабатывают ли один запрос одновременно два рабочих потока.
Диагностика
Полезно логировать поколение соединения, владельца первого ответа и исполнителя, пытающегося ответить повторно. Это позволяет отличить настоящий повтор запроса от ошибки сопоставления старой транзакции с новой конечной точкой.
Как исправлять
Назначьте единственного владельца завершения и атомарно фиксируйте переход транзакции в завершённое состояние. Повторная доставка должна создавать новую операцию либо явно распознаваться как дубликат.
Технические ссылки
Нужно найти другой код? Найти другой код состояния или ошибки.
