From: Dave Chinner <david@fromorbit.com>
To: Amir Goldstein <amir73il@gmail.com>
Cc: Ryan Lindsay <rlindsay@unimelb.edu.au>,
"xfs@oss.sgi.com" <xfs@oss.sgi.com>
Subject: Re: Any better way to interact with xfs?
Date: Mon, 1 Aug 2016 09:08:01 +1000 [thread overview]
Message-ID: <20160731230801.GG16044@dastard> (raw)
In-Reply-To: <CAOQ4uxjidXm-BLEsw0mumk92NC9haZJtKEg=P0hE_ycqhnrSDQ@mail.gmail.com>
On Sun, Jul 31, 2016 at 09:12:23AM +0300, Amir Goldstein wrote:
> On Sun, Jul 31, 2016 at 3:34 AM, Dave Chinner <david@fromorbit.com> wrote:
> > i.e. it's all the same coherency issues that we have with multiple
> > NFS clients modifying the same file concurrently. They don't know
> > what each other are doing, and so modifications are going to get
> > lost or be overwritten incorrectly....
>
> All the disclaimers above are very important for the administrator to know.
Administrator != developer.
These are things a filesystem tool developer would need to know.
They are far, far outside the realm of what a system administrator
needs to know or wants to care about.
> But I believe that the answer to Ryan's original question is:
> Yes, there is a way of interacting at the file system level to
> facilitate a change
> of UID's on files rather than having to just chown recursively down
> the file system.
It's not supported - you'll get to keep all the broken bits to
yourself if you do something like this. You get to handle all the
undocumented wacky corner cases yourself, like unlinked inodes,
inodes that the scan misses because they were created in a region
already scanned before the bulkstat completes, handling partial
completion failures, invalidation of all your backups because they
can't obviously detect that changes have been made, etc.
> I'm not sure how much faster it is going to be and whether anyone
> would want to invest time in writing this bulkchown tool, but it
> is definitely going to reduce Ryan's system downtime.
Is it, though? You say it like it's an unconditional win, but that's
nt necessarily true. i.e. if directory travesal isn't the limiting
factor (e.g. single threaded chown process is the limiting factor),
then simply running concurrent chowns is will be the fastest and
simplest method to scale this out.
> Please correct me if I am wrong.
Bulkstat is not a general purpose API. You can use it if you want
to, but if you don't understand /exactly/ what it is providing, then
the application that uses it wll be buggy and quite possibly
dangerous to the user's data and/or filesystem structure.
You're welcome to play russian roulette with your own filesystems,
but please don't advocate that others should do play along with
you...
Cheers,
Dave.
--
Dave Chinner
david@fromorbit.com
_______________________________________________
xfs mailing list
xfs@oss.sgi.com
http://oss.sgi.com/mailman/listinfo/xfs
next prev parent reply other threads:[~2016-07-31 23:08 UTC|newest]
Thread overview: 9+ messages / expand[flat|nested] mbox.gz Atom feed top
2016-07-28 3:30 Any better way to interact with xfs? Ryan Lindsay
2016-07-28 3:48 ` Eric Sandeen
2016-07-28 6:48 ` Amir Goldstein
2016-07-29 2:25 ` Dave Chinner
2016-07-30 14:26 ` Amir Goldstein
2016-07-31 0:34 ` Dave Chinner
2016-07-31 6:12 ` Amir Goldstein
2016-07-31 23:08 ` Dave Chinner [this message]
2016-07-29 2:33 ` Dave Chinner
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20160731230801.GG16044@dastard \
--to=david@fromorbit.com \
--cc=amir73il@gmail.com \
--cc=rlindsay@unimelb.edu.au \
--cc=xfs@oss.sgi.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox