| Предыдущий | Следующий |
| STATUS_LOG_CONTAINER_STATE_INVALID | STATUS_LOG_PINNED |
STATUS_LOG_STATE_INVALID
STATUS_LOG_STATE_INVALID применяется ко всему журналу, а не к одному контейнеру. Объект может существовать и быть достаточно доступным для чтения некоторыми вызовами, но его совокупное состояние жизненного цикла не удовлетворяет предварительному условию запрошенного действия.
Статус намеренно шире, чем STATUS_LOG_CONTAINER_STATE_INVALID. Прежде чем изменять необработанные файлы или перестраивать список контейнеров, диагностируйте тип журнала, состояние архива, регистрацию клиентов, открытые дескрипторы и порядок операций.
Что проверить
- Определите, представляет ли дескриптор поток, выделенный физический журнал или мультиплексированный физический журнал.
- Запросите текущие сведения о журнале и сопоставьте их с выполняющимися операциями архивирования, управления, работы с контейнерами и завершения.
- Сравните предварительное условие API с наблюдаемым состоянием вместо того, чтобы считать несоответствие состояния временной ошибкой ввода-вывода.
Ссылки
- Microsoft: архитектура CLFS, выделенные и мультиплексированные журналы
- Microsoft: базовый журнал, контейнеры, потоки и модель создания
- Microsoft: справочник пользовательского API CLFS
- Wine: независимые определения констант NTSTATUS
Нужно найти другой код? Найти другой код состояния или ошибки.