Что означает код HRESULT 0xC00D151D (NS_E_NO_NEW_CONNECTIONS)?

 
Предыдущий Следующий
NS_E_CRITICAL_ERROR NS_E_WSX_INVALID_VERSION

NS_E_NO_NEW_CONNECTIONS

Серверное значение NS_E_NO_NEW_CONNECTIONS

Где находится граница

NS_E_NO_NEW_CONNECTIONS (0xC00D151D) обозначает сервер в данный момент не принимает дополнительные клиентские соединения. Для NS_E_NO_NEW_CONNECTIONSдиагностику следует начинать с объекта Windows Media Services и точной операции, вернувшей HRESULT.

Для NS_E_NO_NEW_CONNECTIONSсерверный путь распространения соединяет источник данных, анализатор, заголовок мультимедиа и один или несколько приёмников данных. Когда возвращается NS_E_NO_NEW_CONNECTIONS , публикация методом push добавляет управляющий путь от кодировщика к серверу, а доставка клиенту использует отдельный протокол и состояние соединения. В трассировке NS_E_NO_NEW_CONNECTIONS исследуйте вход и выход независимо: выбор источника, разбор и создание заголовка, а также выбор приёмника являются отдельными контрольными точками. Для NS_E_NO_NEW_CONNECTIONSрешающий вопрос состоит в том, соответствуют ли живой объект и значения этой границе; базовое описание AllStat само по себе не показывает поколение объекта, выбранный подключаемый модуль или сбой нижнего уровня.

Контролируемое исправление

  1. Зафиксируйте 0xC00D151D, NS_E_NO_NEW_CONNECTIONS, точное API/administrative action и время первого сбоя.
  2. Сохраните AllowClientsToConnect сервера, настройка клиентских соединений publishing point, limits, состояние drain/maintenance и текущее число players.
  3. Для NS_E_NO_NEW_CONNECTIONSподтвердите, что объект относится к текущему поколению WMServer, publishing point или presentation.
  4. Выполните один изолированный эксперимент: снова разрешите admissions либо дождитесь завершения ожидаемого drain/limit condition, затем создайте новое соединение.
  5. Повторите исходную операцию NS_E_NO_NEW_CONNECTIONS через тот же protocol и service account; не подменяйте её другим client-side test.
  6. После NS_E_NO_NEW_CONNECTIONSподтвердите ожидаемое следующее состояние и сохраните более поздний HRESULT как отдельный результат pipeline.

Для NS_E_NO_NEW_CONNECTIONSуспех означает, что та же операция проходит эту контрольную точку и достигает ожидаемого следующего состояния, а не просто что символический код исчезает.

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

В типичном инциденте NS_E_NO_NEW_CONNECTIONS сервер достигает условия «сервер в данный момент не принимает дополнительные клиентские соединения» и отклоняет операцию до того, как вызывающая сторона может считать следующий этап выполненным. Поэтому в записи инцидента нужно связать AllowClientsToConnect сервера, настройка клиентских соединений publishing point, limits, состояние drain/maintenance и текущее число players с поколением объекта и точным административным или протокольным запросом.

Полезная отрицательная проверка — снова разрешить admissions либо дождаться завершения ожидаемого drain/limit condition и создать новое соединение. Если после этого тот же NS_E_NO_NEW_CONNECTIONS продвинуться дальше, результат подтверждает эту границу. Если NS_E_NO_NEW_CONNECTIONS сохраняется, вернитесь к первому событию нижнего уровня, не расширяя восстановительные действия.

Соблазнительная, но ошибочная реакция — повторно использовать уже отклонённый session identifier. Это не проверяет важное различие: publishing point stopped относится к lifecycle content, а no new connections может быть admission policy, пока существующие sessions продолжают работу. Для NS_E_NO_NEW_CONNECTIONSсохраняйте символическое имя и данные владельца вместо общего сообщения COM.

Соберите воспроизводимую запись инцидента

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

Результаты проверки

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

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

  • повторное использование уже отклонённого идентификатора сеанса.
  • Для NS_E_NO_NEW_CONNECTIONSне стирайте первый HRESULT многократными повторами: более поздние вызовы могут скрыть компонент, отклонивший операцию.
  • Не подавляйте NS_E_NO_NEW_CONNECTIONS и не заменяйте его общим сообщением об ошибке media server; сохраняйте символический код и операцию-владельца в telemetry.

Не объединяйте соседние значения HRESULT

Основное различие: publishing point stopped относится к lifecycle content, а no new connections может быть admission policy, пока существующие sessions продолжают работу.

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

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

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


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