Transactions for the masses - Transactional NTFS

There is a new blog on my radar - Malcom Smith started to write about Transactional NTFS here: https://blogs.msdn.com/because_we_can/default.aspx 

Transactional NTFS (or TxF as we call it here) is a very exciting technology. The idea is extremely simple: you can group multiple file operations in a single atomic transaction. For example a setup program can use several file system operations to carry on his work (copy new files, delete old ones, replace as needed, etc). What you need, at the end of the setup is a consistent state: either all the changes are applied, or everything is safely rolled back. That's it!

The concept of a transaction is not something new. In fact, transactions are used for probably more than 30 years in the database world. But what is certainly new is to apply the same knowledge into the context of a commercial file system (and not only in a research project). By the way, did you know that NTFS was also (partially) transactional file system since beginning? NTFS is fully transactional for metadata operations (delete, rename, etc) so a reboot in the middle will nicely recover the state to a good point and you won't have a corrupt file system metadata. What Transactional NTFS adds is full transaction support for the data changes, not only for metadata changes. This means that you could add transaction context in any write operating can to be transacted.

If you want to read more about TxF - start with an interesting post here ...