Site icon EfmSoft

Что означает код HRESULT 0xC00D0017 (NS_E_DISK_READ)?

 
Предыдущий Следующий
NS_E_DISK_WRITE NS_E_FILE_WRITE

NS_E_DISK_READ

Диагностика NS_E_DISK_READ

NS_E_DISK_READ обозначает конкретную границу в устаревшем серверном тракте Windows Media Services/NetShow: ошибка чтения данных с диска. Для NS_E_DISK_READ, рассматривайте этот HRESULT как результат компонента, которому принадлежит указанная граница, а не как свидетельство отказа всего потокового, дискового и сетевого тракта в случае ошибки чтения 0xC00D0017.

Где возникает результат

В NetShow Theater сервер содержимого обращался к дискам по сохранённым идентификаторам и данным размещения материалов. Ошибка чтения относится к получению данных с выбранного участника, поэтому нужно отдельно учитывать доступность диска, состояние перестроения или перераспределения полос, подкачку и межсерверные связи. Успешная проверка тома средствами Windows не гарантирует, что Windows Media Services может прочитать требуемый материал при ошибке 0xC00D0017.

Последовательность контролируемой диагностики

Чтобы проверить NS_E_DISK_READ, сначала повторите исходный вызов с тем же серверным объектом и тем же содержимым. Затем для NS_E_DISK_READсохраните первый результат файловой системы, диска или сокета, лежащий под этим сопоставлением, и повторите чтение того же ресурса от имени учётной записи службы. Наконец, для NS_E_DISK_READсоздайте новый запрос или сеанс и убедитесь, что обработка проходит за границу NS_E_DISK_READ , а не только возвращает другую ошибку более раннего этапа.

Данные, которые нужно сохранить до повтора

Запишите идентификатор Content Server и UID диска, версии управляющего блока и файловой системы, состояние перестроения или перераспределения полос, материал и читаемый блок, свободное место, состояние ввода-вывода и компонент, первым отметивший ресурс недоступным. Для NS_E_DISK_READсохраните результат Win32, сокета, хранилища, анализатора или подключаемого модуля, который появился непосредственно перед NS_E_DISK_READ; сервер может преобразовать эту более точную причину в сводный HRESULT ошибки чтения 0xC00D0017.

Интерпретация наблюдений

НаблюдениеЗначение
Та же операция возвращает NS_E_DISK_READ при неизменном идентификаторе объектаПовторное чтение того же объекта снова завершается на дисковой границе. Проверяйте источник данных, его идентификатор и доступность для службы, прежде чем менять остальные части потокового тракта.
Сначала регистрируется низкоуровневая ошибкаДля NS_E_DISK_READсчитайте более ранний результат файловой системы, диска или сокета исходным диагностическим кодом. NS_E_DISK_READ может только преобразовать его в пространство имён Windows Media.
Новый сеанс проходит эту проверку, но завершается ошибкой позжеБолее поздний результат означает, что исходное условие NS_E_DISK_READ устранено. Диагностируйте новый код как отдельный этап конвейера.
Ошибка возникает только у другого клиента или материалаДля NS_E_DISK_READсопоставьте путь, метаданные материала, права учётной записи службы и размещение конкретного блока; ошибка одного материала или клиента не указывает на неисправность всех дисков сервера.

Контрольный список проверки

  1. Зафиксируйте 0xC00D0017, NS_E_DISK_READ, точное действие API или администратора и время первого появления.
  2. Сохраните идентификаторы сервера и диска, версии управляющих структур, материал и читаемый блок, состояние перестроения, свободное место, состояние ввода-вывода и первый низкоуровневый код чтения.
  3. Для NS_E_DISK_READпроверьте, что диск подключён, выбранный материал относится к актуальному размещению, а дескриптор не устарел после перестроения, переподключения или перезапуска службы.
  4. Для NS_E_DISK_READвыполните одно контролируемое исправление: подтвердите чтение того же ресурса от имени учётной записи службы и сохраните первый результат файловой системы, диска либо сокета.
  5. Повторите проверку NS_E_DISK_READ новым запросом чтения и убедитесь, что требуемые данные действительно получены и остаются доступны на следующем этапе обработки, а не только изменился HRESULT.

Карта данных для этого кода

АспектЧто проверить для этого результата
ОбъектДля маркера disk-read кода NS_E_DISK_READзапишите серверный объект, с которого выполнялось чтение, и проверьте соответствие его идентификатора дескриптору клиента; это исключит обращение к другому экземпляру Content Server.
СостояниеДля маркера read-disk кода NS_E_DISK_READукажите состояние диска и размещения материала непосредственно перед чтением, а также ожидавшийся переход; особенно важно отличить обычную работу от перестроения или отключения участника.
Входные данныеДля маркера disk-read кода NS_E_DISK_READсохраните точный материал, блок, путь, смещение, поток либо индекс, который требовалось прочитать; эти данные позволяют воспроизвести обращение к той же области.
ОграниченияДля маркера read-disk кода NS_E_DISK_READзафиксируйте свободное место, число открытых файлов и сеансов, битрейт и пропускную способность; они показывают, не было ли чтение ограничено ресурсами сервера.
Нижний уровеньДля маркера disk-read кода NS_E_DISK_READсохраните первый код файловой системы, диска, сокета, анализатора или устройства перед HRESULT; он должен объяснить, почему данные не были получены.
ПоколениеДля маркера read-disk кода NS_E_DISK_READпроверьте, не изменились ли поколение размещения, UID диска или серверный дескриптор после перестроения, переподключения либо перезапуска; старое обращение нельзя использовать для контрольного чтения.

Диагностическая метка в нижнем регистре disk read служит только сокращением на этой странице; программным идентификатором остаётся NS_E_DISK_READ и HRESULT 0xC00D0017.

Технические ссылки

Критерием восстановления служит не только исчезновение NS_E_DISK_READ. Убедитесь, что тот же запрос чтения завершается успешно, а ожидаемый материал или объект доступен следующему этапу конвейера при проверке ошибки 0xC00D0017.


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

Exit mobile version