| Предыдущий | Следующий |
| 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; общий статус не определяет низкоуровневую причину.
Ссылки
- Microsoft: возвращаемые значения RPC
- Открытые спецификации Microsoft: MS-RPCE
- The Open Group: спецификация DCE 1.1 RPC
Нужно найти другой код? Найти другой код состояния или ошибки.