Что означает код NTSTATUS 0xC002001B (RPC_NT_CALL_FAILED)?

 
Предыдущий Следующий
RPC_NT_NO_CALL_ACTIVE RPC_NT_CALL_FAILED_DNE

RPC_NT_CALL_FAILED

RPC_NT_CALL_FAILED — значение NTSTATUS, используемое средой выполнения Windows RPC. Этот статус имеет важную семантику выполнения: сервер в какой-то момент был доступен, и выполнение удалённой процедуры могло начаться. Поэтому клиент не может безопасно считать, что побочного эффекта не было, только потому что получил ошибку.

Это отличается от RPC_NT_CALL_FAILED_DNE, который прямо указывает, что выполнение на сервере не началось. Это различие важно для проектирования повторов, идемпотентности и согласования операций, изменяющих удалённое состояние.

Вызов завершился ошибкой после того, как сервер уже мог начать процедуру

  • Сопоставьте идентификаторы клиентских вызовов, журналы сервера и идентификаторы транзакций приложения, чтобы установить, вошла ли процедура в серверный код.
  • Повторяйте операцию только если она идемпотентна или приложение имеет устойчивый способ обнаружить и согласовать предыдущее выполнение.
  • Зафиксируйте транспорт и расширенные сведения об ошибке RPC; общий статус не определяет низкоуровневую причину.

Ссылки


Нужно найти другой код? Найти другой код состояния или ошибки.