[Top] [All Lists]

Re: Transactional XFS?

To: Dave Chinner <david@xxxxxxxxxxxxx>, Grozdan <neutrino8@xxxxxxxxx>
Subject: Re: Transactional XFS?
From: Stewart Smith <stewart@xxxxxxxxxxxxxxxx>
Date: Thu, 16 Feb 2012 12:01:01 +1100
Cc: xfs@xxxxxxxxxxx
In-reply-to: <20120216002237.GW14132@dastard>
References: <CAFLt3phWcaQ4K3OPSVUkyN0BXqh+jQgQbeA59Oav23aOPLYMYw@xxxxxxxxxxxxxx> <20120216002237.GW14132@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 11:22:37 +1100, Dave Chinner <david@xxxxxxxxxxxxx> wrote:
> On Wed, Feb 15, 2012 at 08:15:46PM +0100, Grozdan wrote:
> > Hi,
> > 
> > I just finished watching the excellent speech of Dave Chinner at
> > linux.conf.au and I must say I'm impressed by the recent improvements
> > to XFS. Towards the end of the talk, Dave talked about upcoming
> > improvements on Metadata reliability and other features. What I'm
> > wondering about is if there are any plans in making XFS transactional
> > (fully atomic) like it is the case with recent NTFS versions on
> > Windows Vista and higher?
> What do you mean by "fully atomic"? NTFS is not fully atomic - it
> doesn't journal data so can lose data on a crash - so I'm not sure
> what you mean here....

There's another API in Windows that's let you do operations in a
all-or-nothing way. Originally this was scoped to be able to just add a
couple of API calls to the Windows file API and have it all "just work"
(imagine adding just three syscalls: begin(), commit(),
rollback()). This didn't really work out so well, and by the final Vista
release, it was a wholly different API calls (more like tx_begin,
tx_open, tx_read, tx_write... so you had to have code explicitly aware
of transactions).

AFAIK the current big user is Windows Update. That is, windows update
will either apply all its changes to the system or none. Think of being
able to hit the reset button halfway through a windows update and have
everything "just work" and come back to a sane state. I've had a linux
box crash during a dist-upgrade before... not pretty.

It's a neat idea, but as you can imagine, fraught with difficulties.

I think it'd be possible to do.. you know, if you lock a number of FS
and VFS devs in a room with database people for a month or so we may
theoritically solve nearly all the problems....

Stewart Smith

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