What does NTSTATUS 0xC0190049 (STATUS_SPARSE_NOT_ALLOWED_IN_TRANSACTION) mean?

 
Previous Next
STATUS_NO_SAVEPOINT_WITH_OPEN_FILES STATUS_TM_IDENTITY_MISMATCH

STATUS_SPARSE_NOT_ALLOWED_IN_TRANSACTION

Sparse-file metadata cannot be changed inside this TxF transaction

STATUS_SPARSE_NOT_ALLOWED_IN_TRANSACTION reports that the requested sparse-file operation is not allowed while a transaction is active on the file. Sparse state changes affect allocation metadata, not just file bytes, and TxF does not allow this operation in the active transacted context.

This often appears when generic file utilities apply sparse optimization while an installer, updater, or database-like component is also using TxF for atomic updates.

What to check

  • Calls to mark a file sparse or set zero-data ranges while using a transacted handle.
  • Background compression, deduplication, or optimization code that changes allocation state indirectly.
  • Whether the sparse operation can be performed before transaction start or after commit.
  • Whether the file is on NTFS and whether the operation is being issued through the intended handle.

Useful distinction

This is not a generic unsupported-file-system status. It is specifically the combination of sparse-file operation and active transaction that is rejected.

References


Looking for a different code? Search another status or error code.