| Предыдущий | Следующий |
| ERROR_DATA_LOST_REPAIR | ERROR_TM_IDENTITY_MISMATCH |
ERROR_SPARSE_NOT_ALLOWED_IN_TRANSACTION
Что означает ERROR_SPARSE_NOT_ALLOWED_IN_TRANSACTION
ERROR_SPARSE_NOT_ALLOWED_IN_TRANSACTION означает, что операция с разреженным файлом выполняется, пока файл участвует в активной TxF-транзакции. Это ограничение Transactional NTFS, а не общий признак отсутствия поддержки sparse files на томе.
Что проверить
- Сохраните конкретный sparse FSCTL и transaction handle, с которыми открывался файл.
- Проверьте, остаётся ли transacted file handle открытым в момент изменения sparse-разметки.
- Сверьте сценарий с ограничениями TxF; повтор того же FSCTL внутри той же транзакции ограничения не снимает.
Как исправить
Если разреженная разметка действительно нужна, подготовьте её до начала TxF-транзакции или после её завершения. Не разрывайте атомарность транзакции скрытым повторным открытием файла вне неё без явного решения на уровне приложения.
Как подтвердить исправление
Sparse-операция и транзакционные изменения выполняются в допустимом порядке и больше не пересекаются на одном file handle.
Технические ссылки
Нужно найти другой код? Найти другой код состояния или ошибки.