| Предыдущий | Следующий |
| PEER_E_DATABASE_ALREADY_PRESENT | PEER_E_IDENTITY_NOT_FOUND |
PEER_E_DATABASE_NOT_PRESENT
Переход состояния, представленный HRESULT
PEER_E_DATABASE_NOT_PRESENT — HRESULT 0x80630306 означает, что операция графа или группы ожидает локальную базу, отсутствующую по настроенному пути. PEER_E_DATABASE_NOT_PRESENT — Ранее успешный вызов не гарантирует, что позднее полученные дескриптор, identity, запись или сетевое присутствие всё ещё действительны.
Восстановите последовательность событий
- Определите первый вызов среди PeerGraphOpen, PeerGroupOpen и путей импорта/настройки базы, вернувший этот HRESULT.
- Сохраните разрешённый путь к базе, профиль пользователя, identity графа/группы, предыдущие действия удаления/экспорта, события файловой системы и изменения конфигурации.
- Сопоставьте события graph, group, PNRP и collaboration с cancellation, disconnect, shutdown и sign-out приложения.
- Выполните узкое сравнение: запишите полностью нормализованный путь и сравните открытие отсутствующей цели с созданием новой временной базы под той же учётной записью.
Peer-записи объединяют типизированную структуру записи, необязательные доступные для поиска XML-атрибуты, полезную нагрузку, метаданные создателя и срок действия. Локальная база может получать записи в порядке, отличающемся от зависимостей приложения.
Матрица интерпретации
| Наблюдение | Интерпретация для PEER_E_DATABASE_NOT_PRESENT |
|---|---|
| Ни один create/open/enumerate вызов не вернул объект | Сбой происходит до контракта записи, описанного здесь. |
| Сначала произошло событие close, delete, disconnect, expiration или sign-out | Исследуйте гонку lifecycle объекта до предположений о malformed network data. |
| Контролируемый запуск продвигается до другого HRESULT | Исходное локальное реплицируемое хранилище исправлено, а новый код указывает на следующее невыполненное условие. |
Ближайший альтернативный диагноз
PEER_E_RECORD_NOT_FOUND отличается тем, что отсутствие записи не означает отсутствия самого файла базы. Оба кода могут появиться в одном workflow, но не требуют одинакового исправления.
Исправление и подтверждение
восстановите или импортируйте правильную базу либо осознанно пересоздайте граф/группу; не создавайте пустое хранилище, если необходимы прежнее членство или записи. Проверяйте результат перечислением ожидаемых records, members, connections, endpoints или presence state, а не только исчезновением ошибки вызова.
Инструментирование и регрессионное покрытие
Фиксируйте первый неудачный вызов, а не более поздний результат cleanup. Решающее значение имеют разрешённый путь к базе, профиль пользователя, identity графа/группы, предыдущие действия удаления/экспорта, события файловой системы и изменения конфигурации.
| Регрессионный уровень | Проверяемый случай | Условие прохождения |
|---|---|---|
| Входные данные и время жизни объекта | Постройте минимальный сценарий, в котором операция графа или группы ожидает локальную базу, отсутствующую по настроенному пути. | В тесте фиксируются владеющий дескриптор, контекст пользователя и точный API из PeerGraphOpen, PeerGroupOpen и путей импорта/настройки базы. |
| Контролируемое сравнение | запишите полностью нормализованный путь и сравните открытие отсутствующей цели с созданием новой временной базы под той же учётной записью. | Между неудачным и успешным запуском меняется только нужное локальное реплицируемое хранилище. |
| Путь восстановления | восстановите или импортируйте правильную базу либо осознанно пересоздайте граф/группу; не создавайте пустое хранилище, если необходимы прежнее членство или записи. | Нужная операция завершается успешно без замены несвязанных метаданных поиска и срока действия. |
Сохраняйте unsigned hexadecimal HRESULT, symbolic names и timestamps в одной trace. Такая запись позволяет регрессионному тесту отличить этот контракт записи от последующего сбоя транспорта, авторизации или приложения.
Исходные материалы
- Microsoft: схема атрибутов записи — источник документирует соответствующую peer boundary.
- Microsoft: формат поискового запроса по записям — источник документирует соответствующую peer boundary.
- Microsoft: зависимости записей — источник документирует соответствующую peer boundary.
- Microsoft: функции Grouping API — источник документирует соответствующую peer boundary.
Нужно найти другой код? Найти другой код состояния или ошибки.