File Level Schema Support

Writers can fine-tune the performance of various types of backup at the file set level by indicating through a file specification backup type, indicated by a bit mask or bitwise OR of the members of the VSS_FILE_SPEC_BACKUP_TYPE enumeration.

For specified types of backup, the writer indicates the following:

  • Whether it will be necessary to shadow copy the volume to properly back up a file set. For instance, if the files in a file set are not exclusively opened by the writer and it can ensure that it is stable, a shadow copy is not needed.
  • Whether the requester has to perform the backup in such a way that, regardless of last modification time or other issues, the version of the file set's files current at backup will be restored. Typically, this means that the file set is copied as part of the backup.

The values of VSS_FILE_SPEC_BACKUP_TYPE that indicate shadow copy requirement are:

  • VSS_FSBT_ALL_SNAPSHOT_REQUIRED
  • VSS_FSBT_FULL_SNAPSHOT_REQUIRED
  • VSS_FSBT_DIFFERENTIAL_SNAPSHOT_REQUIRED
  • VSS_FSBT_INCREMENTAL_SNAPSHOT_REQUIRED
  • VSS_FSBT_LOG_SNAPSHOT_REQUIRED

The values of VSS_FILE_SPEC_BACKUP_TYPE that indicate the requirement to back up a file are:

  • VSS_FSBT_ALL_BACKUP_REQUIRED
  • VSS_FSBT_FULL_BACKUP_REQUIRED
  • VSS_FSBT_DIFFERENTIAL_BACKUP_REQUIRED
  • VSS_FSBT_INCREMENTAL_BACKUP_REQUIRED
  • VSS_FSBT_LOG_BACKUP_REQUIRED

By default, file sets are tagged with a file specification backup type of VSS_FSBT_ALL_BACKUP_REQUIRED | VSS_FSBT_ALL_SNAPSHOT_REQUIRED, meaning that a shadow copy is always required in handling the file set's files, and that the files should be copied in all types of backup.