From: Pete Wyckoff <pw@padd.com>
To: "Brian J. Murrell" <brian@interlinx.bc.ca>
Cc: git@vger.kernel.org
Subject: Re: checkout-index: unable to create file foo (File exists)
Date: Mon, 5 Nov 2012 12:53:40 -0500 [thread overview]
Message-ID: <20121105175340.GA889@padd.com> (raw)
In-Reply-To: <5097DA5C.9020603@interlinx.bc.ca>
brian@interlinx.bc.ca wrote on Mon, 05 Nov 2012 10:25 -0500:
> On 12-11-04 05:10 PM, Pete Wyckoff wrote:
> > Which network filesystem and OS are you using?
>
> The filesystem is Lustre. So not only is it networked, it is
> distributed where the namespace and data store are handled by different
> nodes, to it's not at all as atomic as NFS-on-(say-)ext4. Given that,
> it's entirely possible to imagine a scenario where a namespace (MDT in
> the Lustre nomenclature) operation could get interrupted after the
> namespace entry has been created but before the open(2) completes. So
> the question here is who's responsibility is it to handle that situation?
That's all in the filesystem. Hopefully it doesn't really work
like that because the fs is incosistent at this point.
ERESTARTSYS handling is done entirely in the kernel, not in glibc
and not git. A possible in-kernel fix is not to handle any
signals (except KILL) when waiting for the open mechanics to
finish.
> > The third option is
> > that there is a bug in the filesystem client.
>
> Yep. But before we can go on to determining a bug, the proper/expected
> behavior needs to be determined. I guess that's taking this a bit OT
> for this list though. I'm not really sure where else to go to determine
> this though. :-(
You could toss this to lustre support. Or try first to come up
with a reduced testcase with lots of opens and SIGALRMs racing
against each other. Maybe xfstests or some other suite might
also tickle the bug.
I don't think it is feasible to try to handle this error
condition in applications.
-- Pete
prev parent reply other threads:[~2012-11-05 17:53 UTC|newest]
Thread overview: 4+ messages / expand[flat|nested] mbox.gz Atom feed top
2012-11-01 20:25 checkout-index: unable to create file foo (File exists) Brian J. Murrell
2012-11-04 22:10 ` Pete Wyckoff
2012-11-05 15:25 ` Brian J. Murrell
2012-11-05 17:53 ` Pete Wyckoff [this message]
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=20121105175340.GA889@padd.com \
--to=pw@padd.com \
--cc=brian@interlinx.bc.ca \
--cc=git@vger.kernel.org \
/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;
as well as URLs for NNTP newsgroup(s).