AcidFS 1.0 Beta 1
ACID semantics for the filesystem
AcidFS is a Python filesystem that allows interaction with ACID semantics, using transactions.
- Changes to the filesystem will only be persisted when a transaction is committed and if the transaction succeeds.
- Within the scope of a transaction, your application will only see a view of the filesystem consistent with that filesystem's state at the beginning of the transaction. Concurrent writes do not affect the current context.
- A full history of all changes is available, since files are stored in a backing `Git` repository. The standard `Git` toolchain can be used to recall past states, roll back particular changes, replicate the repository remotely, etc.
- Changes to a `AcidFS` filesystem are synced automatically with any other database making use of the `transaction` package and its two phase commit protocol, eg. `ZODB` or `SQLAlchemy`.