Что означает код HRESULT 0xC00D145B (NS_E_INVALID_PUSH_PUBLISHING_POINT_START_REQUEST)?

 
Предыдущий Следующий
NS_E_PUBLISHING_POINT_REMOVED NS_E_UNSUPPORTED_LANGUAGE

NS_E_INVALID_PUSH_PUBLISHING_POINT_START_REQUEST

NS_E_INVALID_PUSH_PUBLISHING_POINT_START_REQUEST — владелец, данные и восстановление

Что проверяет сервер

Этот результат (0xC00D145B) отмечает границу администратор попытался запустить push point, который должен запускаться входящим push-соединением encoder. Диагностику следует начинать с объекта Windows Media Services и точной операции, вернувшей HRESULT.

Publishing points являются stateful server objects с type, path, name, коллекциями plug-ins и жизненным циклом start/stop. Когда этот результат возвращается, broadcast, on-demand, cache/proxy и push points не предоставляют одинаковые методы и допустимые переходы. В он trace считывайте type и status точки из актуальной server object model. При диагностике он, имя в старом представлении MMC или сохранённом COM interface может относиться к предыдущему поколению. Решающий вопрос состоит в том, соответствуют ли живой объект и значения этой границе; базовое описание AllStat само по себе не показывает поколение объекта, выбранный подключаемый модуль или сбой нижнего уровня.

Интерпретация повторной проверки

Наблюдение при повторной проверкеТолкование
Тот же вызов по-прежнему возвращает этот результатОтклонённое предварительное условие не изменилось либо caller всё ещё использует старое поколение object/configuration.
Операция проходит дальше, и появляется более поздний кодГраница этот результат пройдена. После этого результатадиагностируйте новый код на его собственной стадии источника, анализатора, приёмника, сети или клиента.
Новый объект работает, а сохранённый — нетВ инциденте он участвуют lifetime или stale context объекта; исправьте lifecycle вместо machine-wide workaround.
Сбой возникает только для одного publishing point, playlist, ключа cache или plug-inДанные указывают на configuration/content конкретного объекта, а не на server-wide outage для него.

Структура сбоя для этого кода

В типичном инциденте он сервер достигает условия «администратор попытался запустить push point, который должен запускаться входящим push-соединением encoder» и отклоняет операцию до безопасного перехода к следующей стадии. Поэтому запись инцидента должна объединять тип publishing point, префикс источника, encoder push URL, активные distribution connections и вызывающая сторона попытки запуска, поколение объекта и точный административный либо protocol request. Пример воспроизведения: операция достигает условия «администратор попытался запустить push point, который должен запускаться входящим push-соединением encoder» при значениях: тип publishing point, префикс источника, encoder push URL, активные distribution connections и вызывающая сторона попытки запуска.

Полезный отрицательный контроль — запустить push session Encoder и позволить push data source активировать point. Если после этого та же он продвинуться дальше, результат подтверждает эту границу. Если он сохраняется, вернитесь к первому событию нижнего уровня, не расширяя восстановительные действия.

Типичная ошибочная реакция: не переводите point в auto-start без учёта того, что его жизненным циклом управляет входящее encoder push-соединение. Это не проверяет решающее условие «администратор попытался запустить push point, который должен запускаться входящим push-соединением encoder». Сохраняйте символическое имя и данные владельца вместо общего сообщения COM.

Данные, отделяющие этот код

ДанныеПочему это важно для него
Решающее состояниетип publishing point, префикс источника, encoder push URL, активные distribution connections и вызывающая сторона попытки запуска
Ответственный объектЗапишите server, publishing point, playlist, namespace node, plug-in или элемент cache, вернувший он, включая время его создания или restart.
Первый нижележащий результатСохраните первое событие Win32, socket, COM, parser или plug-in до HRESULT; более поздние wrappers могут сопоставлять несколько причин с ним.
Контролируемое сравнениеИспользуйте заведомо исправный объект того же типа и измените только предварительное условие «администратор попытался запустить push point, который должен запускаться входящим push-соединением encoder».
Конфиденциальные данныеПо возможности записывайте identifiers, lengths, hashes и обезличенные URL; не публикуйте passwords, authorization files или несвязанные client data.

Минимальный полезный эксперимент

  1. Запишите 0xC00D145B, он, точное API/administrative action и время первого сбоя.
  2. Сохраните тип publishing point, префикс источника, encoder push URL, активные distribution connections и вызывающая сторона попытки запуска.
  3. Подтвердите, что объект относится к текущему поколению WMServer, publishing point или presentation.
  4. Выполните один изолированный эксперимент: не запускать такой push point административно, а дать его запустить push-соединению encoder.
  5. Повторите исходную операцию он через тот же protocol и service account; не подменяйте её другим client-side test.
  6. после него подтвердите ожидаемое следующее состояние и сохраните более поздний HRESULT как отдельный результат pipeline.

Для автоматических тестов он проверяйте одновременно сам HRESULT и итоговое состояние publishing point, playlist, plug-in или архива; исчезновение одного кода без правильного состояния не является успешным исправлением.

Сравнение с соседними состояниями

Основное различие: Invalid push publishing point проверяет саму цель; он отклоняет инициатора перехода Start.

Близкий результатДругая контрольная точка
NS_E_UNSUPPORTED_LANGUAGEИспользуйте тип объекта и последовательность операций, чтобы определить, какой результат является первичным.
NS_E_PUBLISHING_POINT_REMOVEDПо отношению к этому результатуэтот соседний результат относится к другому состоянию или ветви проверки, даже если видимый пользователю симптом похож.
NS_E_WRONG_OS_VERSIONИспользуйте тип объекта и последовательность операций, чтобы определить, какой результат является первичным.

Изменения, которые не доказывают причину

  • не переводите point в auto-start без учёта того, что его жизненным циклом управляет входящее encoder push-соединение.
  • Не меняйте в одном тесте точку публикации, протокол, содержимое и набор подключаемых модулей. Когда возвращается он возвращается, такой тест не показывает, какое именно предварительное условие устранило код.
  • Не подавляйте он и не заменяйте его общим сообщением об ошибке media server; сохраняйте символический код и операцию-владельца в telemetry.

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

Завершайте диагностику только после того, как он перестанет возвращаться на актуальном объекте и будет подтверждено ожидаемое следующее состояние.


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