Changes to Hyper-V Writer on Server 2012 R2 as of update KB2919355 RRS feed

  • Question

  • There appear to have been big changes to the Hyper-V VSS Writer as of update 2919355. I have been unable to find any documentation that discusses these changes in detail. I am a developer for a backup product and these changes have made it extremely difficult to provide continuous backups without always having to full scan a VM. This is achieved by monitoring file system changes through a filter driver registered with the filter manager. 

    Each time a snapshot is requested, the writer rules get changed as of this update. This did not use to happen. The updated rules appear to apply to files in the \Snapshots\ directory, and it looks like files in here don't get written to until the next snapshot is requested. As long as this pattern is true, then this can reasonably be worked around. If this changes though and writer rules get modified and files are immediately written to, relying on a file system filter driver to track changes could result in missed updates if associated monitoring rules are not immediately updated which is obviously bad. 

    Another issue now is that there are files being written after calling IVssBackupComponents::DoSnapshotSet. Files are created and then immediately deleted prior to VSS fully forming the snapshot and returning success to the requester. The file system filter driver will report the delete prior to the snapshot being complete, and therefore processing of these files will be skipped. Unfortunately they are in the snapshot, and they are absolutely required to be backed up along with the VM.  Restoring a VM without these files results in a failure to bring the VM up afterwards. Filtering for specific files/directories based on name patterns and postponing the delete for them until later does not feel like a good approach to solving this. 

    Details above are based on observation only. I have no idea if there are other scenarios/configurations I may have missed that could result in data loss or VMs that cannot be restored/mounted correctly. Any documentation or best practices here would be greatly appreciated. Thanks!

    Thursday, August 17, 2017 6:34 PM