| Предыдущий | Следующий |
| VDS_E_VOLUME_NOT_RETAINED | VDS_E_ALIGN_BEYOND_FIRST_CYLINDER |
VDS_E_VOLUME_RETAINED
Практический смысл
VDS_E_VOLUME_RETAINED относится к Virtual Disk Service и topology тома. Конкретный признак: том уже находится в retained-состоянии. Это состояние полезно как точка разделения нескольких соседних причин, поэтому не заменяйте его общим сообщением об ошибке.
Это failure HRESULT; успешность следующего шага подтверждайте отдельным результатом, а не отсутствием исключения в верхнем слое. В первую очередь проверяйте топологию volume/plex/member, health участников и ограничения файловой системы. Не переносите вывод с соседнего HRESULT только потому, что у него тот же facility или общий компонент.
Специфичные признаки исходного описания
Use current VDS object state as the source of truth and continue the higher-level workflow from the retained state rather than issuing the same transition again.
Distinguish retained association from a duplicate partition GUID or duplicate volume object.
Requery current volume/extent state instead of replaying the retain transition.
VDS already maintains a volume-to-partition association, so repeating an operation that expects to create that association is rejected.
Что сохранить до исправления
- volume/plex/member IDs и типы
- health/status каждого участника и карта extent
- операция, requested size и фактический layout до изменения
Как проверить границу
При асинхронной операции сохраняйте как HRESULT запуска/опроса, так и финальный operation HRESULT — они описывают разные границы. Для состояния «том уже находится в retained-состоянии» сначала воспроизведите минимальную операцию без параллельных изменений конфигурации, затем сравните before/after evidence.
Исправление и повтор
Исправляйте только подтверждённый prerequisite на уровне Virtual Disk Service и topology тома: входной параметр, capability, object state, provider/graph topology или внешний ресурс. После изменения заново получите актуальные объекты, если их состояние могло устареть, и повторите исходный минимальный вызов.
Технические ссылки
- IVdsAdvancedDisk.
- VDS Disk Object.
- IVdsDisk::QueryExtents.
- IVdsAdvancedDisk::QueryPartitions.
- MS-VDS error codes.
Нужно найти другой код? Найти другой код состояния или ошибки.