[Top] [All Lists]

Re: Transactional XFS?

To: Dave Chinner <david@xxxxxxxxxxxxx>
Subject: Re: Transactional XFS?
From: Stewart Smith <stewart@xxxxxxxxxxxxxxxx>
Date: Thu, 16 Feb 2012 16:38:02 +1100
Cc: Grozdan <neutrino8@xxxxxxxxx>, xfs@xxxxxxxxxxx
In-reply-to: <20120216014338.GX14132@dastard>
References: <CAFLt3phWcaQ4K3OPSVUkyN0BXqh+jQgQbeA59Oav23aOPLYMYw@xxxxxxxxxxxxxx> <20120216002237.GW14132@dastard> <87k43nzj5e.fsf@xxxxxxxxxxxxxxxx> <20120216014338.GX14132@dastard>
User-agent: Notmuch/0.11+72~g8ea8292 (http://notmuchmail.org) Emacs/23.3.1 (x86_64-pc-linux-gnu)
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

Yep :)

> 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.

Stewart Smith

<Prev in Thread] Current Thread [Next in Thread>