Что означает код NTSTATUS 0xC01A0007 (STATUS_LOG_READ_CONTEXT_INVALID)?

 
Предыдущий Следующий
STATUS_LOG_BLOCKS_EXHAUSTED STATUS_LOG_RESTART_INVALID

STATUS_LOG_READ_CONTEXT_INVALID

STATUS_LOG_READ_CONTEXT_INVALID применяется к последовательности чтения CLFS, а не к полезной нагрузке одной записи. ReadLogRecord начинает последовательность и возвращает контекст чтения; последующие чтения используют этот контекст, а TerminateReadLog освобождает связанные с ним ресурсы.

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

Проверьте жизненный цикл контекста чтения

  • Храните дескриптор журнала, область маршалинга, начальный LSN и возвращённый контекст чтения связанными в состоянии вызывающей стороны.
  • Не выполняйте ещё одну операцию последовательности с контекстом после завершения или после сброса либо закрытия состояния владеющего журнала.
  • При воспроизведении ошибки регистрируйте порядок вызовов API и запрошенное направление чтения, а не только итоговый LSN.

Ссылки


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