Что означает код NTSTATUS 0xC000021F (STATUS_REPLY_MESSAGE_MISMATCH)?

 
Предыдущий Следующий
STATUS_DRIVER_CANCEL_TIMEOUT STATUS_MAPPED_ALIGNMENT

STATUS_REPLY_MESSAGE_MISMATCH

Ответ направлен не тому ожидающему запросу LPC

Синхронная обработка запросов и ответов LPC связывает ответ с конкретным ожидающим клиентским контекстом. Устаревший идентификатор клиента, повторно использованный заголовок сообщения, ответ через неверное соединение или два рабочих потока, отвечающие на один запрос, могут нарушить связь и вызвать этот статус.

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

Что проверить

  • Записывайте ID сообщения запроса, ID клиента, идентичность соединения, принявший и ответивший рабочие потоки.
  • Убедитесь, что пути тайм-аута и отмены атомарно отзывают право отправки обычного ответа.
  • Не создавайте и не используйте повторно нативные заголовки ответа от предыдущего запроса.
  • Проверьте, не обрабатывают ли одно сообщение одновременно потребители очереди и списка завершения.

Ссылки


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