On Thu, 16 Feb 2012 12:43:38 +1100, Dave Chinner <david@xxxxxxxxxxxxx> wrote:
> Oh, so making some set of random user changes to random user data
> have ACID properties? That's what databases are for, isn't it? :P
> I dont see us implementing anything like this in XFS anytime soon.
> We are looking to add transaction grouping so that we can make
> things that currently require multiple transactions (e.g. create a
> file, add a default ACL) atomic, but I don't have any plans to
> open the can of worms that is userspace controlled transactions any
> time soon.
The worst part is working out the semantics as to not break existing apps
(without completely sacrificing concurrency).
> We already have this upgrade rollback functionality in development
> with none of that complexity - it uses filesystem snapshots so is
> effectively filesystem independent and already works with yum and
> btrfs. You don't need any special application support for this -
> rollback from a failed upgrade is as simple as a reboot.
The downside being you also roll back your logs and any other changes
made during that time. On the whole though, it's probably sufficient.
> Sure, Microsoft have been trying to make their filesystem a database
> for years. It's theoretically possible, but in practice they've
> fallen short in every attempt in the past 15 years.
err... try 20 years :)
It's funny in a way, sqlite succeeds at effectively doing this for an
awful large number of applications.