Что означает код HRESULT 0x80EE004B (RTC_E_DUPLICATE_WATCHER)?

 
Предыдущий Следующий
RTC_E_DUPLICATE_BUDDY RTC_E_MALFORMED_XML

RTC_E_DUPLICATE_WATCHER

Интерпретация результата

RTC_E_DUPLICATE_WATCHER (0X80EE004B) означает: watcher уже присутствует в watcher/authorization collection. Этот HRESULT описывает узкую границу, поэтому сначала фиксируйте producing method и объект, а затем уже интерпретируйте сообщение пользователя.

Английский маркер для сопоставления с исходной документацией: the watcher is already present in the watcher/authorization collection. Используйте его как поисковый ключ вместе с timestamp и transaction/session ID.

Что сохранить

  • profile identity и текущий presence enabled/roaming state.
  • URI/ID текущих buddy, watcher или group и состояние соответствующей коллекции.
  • ACL/authorization state и событие, после которого появился результат.

Код-специфическая проверка

Сверяйте server ID/URI элемента с текущей buddy, watcher или group collection и состоянием синхронизированной коллекции; локальный кэш после sync может быть уже устаревшим.

Проверьте, не является ли результат корректным сигналом идемпотентности: сравните identity существующего объекта с тем, который код собирается создать или включить. Повторное создание после такого результата может породить второй lifecycle и скрыть владельца состояния.

Пример из исходного описания: Two NOTIFY-related callbacks attempt to insert the same watcher.. Для проверки меняйте только параметр или состояние, которое отличает этот сценарий от рабочего.

Восстановление

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

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


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