public inbox for linux-btrfs@vger.kernel.org
 help / color / mirror / Atom feed
From: Matteo Frigo <athena@fftw.org>
To: linux-btrfs@vger.kernel.org
Subject: Re: Mass-Hardlinking Oops
Date: Tue, 13 Oct 2009 20:29:02 -0400	[thread overview]
Message-ID: <87my3urf75.fsf@fftw.org> (raw)
In-Reply-To: 20091012124726.GL2632@think

Chris Mason <chris.mason@oracle.com> writes:

> Please keep in mind this is only a limit on the number of links to a
> single file where the links and the file are all in the same directory.

For the record, the nnmaildir mail backend in Gnus (an Emacs package
for reading news and email) creates multiple hardlinks to the same
file in the same directory.  I had several thousands hardlinks at one
time.

Gnus/nnmaildir uses hardlinks to keep track of attributes of email
messages.  For example, to denote that the email stored in file FOO
has been read, nnmaildir creates a link called marks/read/FOO, linking
to an empty file.  The rationale for this mechanism is that 1) you
don't want to modify the email message itself; 2) storing marks in
separate files allows concurrent accesses to the mail spool without
locking; and 3) using a hardlink rather than a new empty file saves an
inode.

I am not saying that what Gnus does is particularly smart, but this is
an example of a real world application that may break under btrfs.

Regards,
Matteo Frigo



  parent reply	other threads:[~2009-10-14  0:29 UTC|newest]

Thread overview: 29+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2009-08-01 13:16 Mass-Hardlinking Oops Raskin Michael
2009-08-03 14:57 ` Chris Mason
2009-08-03 15:00   ` Tomasz Chmielewski
2009-08-03 20:01     ` Mikhail Raskin
2009-10-11 15:05       ` Pär Andersson
2009-10-11 22:43         ` Yan, Zheng 
2009-10-12  8:07           ` Tomasz Chmielewski
2009-10-12 12:47             ` Chris Mason
2009-10-13  7:07               ` Florian Weimer
2009-10-13  7:28                 ` Yan, Zheng 
2009-10-14  0:29               ` Matteo Frigo [this message]
2009-10-15 17:55                 ` Tracy Reed
2009-10-15 18:27                   ` Tomasz Chmielewski
2009-10-15 19:15                   ` Oystein Viggen
2009-10-16 22:17                 ` Pär Andersson
2009-10-12 16:16         ` jim owens
2009-10-12 17:09           ` Goffredo Baroncelli
2009-10-12 18:07             ` jim owens
2009-10-12 17:42           ` John Dong
2009-10-12 18:17             ` jim owens
2009-10-12 20:04               ` Chris Mason
2009-10-12 21:51                 ` berk walker
2009-10-13  0:31                 ` Claudio Martins
2009-10-13  3:42               ` Anthony Roberts
2009-10-13  9:08             ` Brian Brunswick
2009-10-13 17:45             ` Zach Brown
2009-10-13 20:03               ` Chris Mason
2009-10-13 20:55                 ` Zach Brown
2009-10-12 20:50           ` Tomasz Chmielewski

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=87my3urf75.fsf@fftw.org \
    --to=athena@fftw.org \
    --cc=linux-btrfs@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