Что означает код HRESULT 0x80248017 (WU_E_DS_TABLESESSIONMISMATCH)?

 
Предыдущий Следующий
WU_E_DS_DECLINENOTALLOWED WU_E_DS_SESSIONLOCKMISMATCH

WU_E_DS_TABLESESSIONMISMATCH

Что означает WU_E_DS_TABLESESSIONMISMATCH

WU_E_DS_TABLESESSIONMISMATCH означает, что объект таблицы Windows Update datastore привязан к одному сеансу, а вызывающий код пытается использовать его из другого сеанса.

Что проверить

  • Идентификатор сеанса при open/read/write/close таблицы.
  • Не переживает ли сброс объекта таблицы или close исходному сеансу.
  • Передаётся ли ссылка между рабочими потоками вместе с правильным контекстом сеанса.
  • Не кешируется ли объект таблицы дольше, чем сеанс datastore.

Как исправлять

После reset/close исходному сеансу все связанные ссылки на таблицу должны считаться недействительными. Откройте таблицу заново в новом сеансе и исправьте модель владения, чтобы table и session имели общее время жизни. Простая сериализация close не решает проблему, если устаревшая ссылка продолжает жить в другом рабочем потоке. Для редкого race логируйте ID сеанса и таблицы на каждом вызове datastore.

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


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