All of lore.kernel.org
 help / color / mirror / Atom feed
From: Chris Mason <mason@suse.com>
To: "Burnes, James" <james.burnes@gwl.com>
Cc: "'reiserfs-list@namesys.com'" <reiserfs-list@namesys.com>
Subject: Re: FW: reiser4 plugin for maildir
Date: Wed, 03 Dec 2003 15:28:48 -0500	[thread overview]
Message-ID: <1070483327.27597.121.camel@tiny.suse.com> (raw)
In-Reply-To: <3DF9165145FACB4C96977FF650C1E90409633541@its-mail1.its.corp.gwl.com>

[reiser4 plugins to make mail delivery faster]

There are a few basic things that slow down mail servers when they talk
to filesystems:

1) multiple threads delivering to the same directory contend for the
directory semaphore for creating new files

2) atomic creation of an entire file

3) high load leads to numerous small synchronous filesystem operations
when multiple threads all try to deliver at once.

#1 is best fixed at the VFS level, basically allowing more fine grained
directory locks (lustre needs this as well I think).  It could be dealt
with entirely inside reiser4, but this is a generic need for linux as a
whole I think.

#2 and #3 could be dealt with in a reiser4 transaction subsystem. 
Basically the mail server would deliver a number of messages and trigger
commits at regular intervals, and reiser4 would make sure the files were
created atomically in the FS.  The mail server would not report the file
as delivered to the smtp client until the commit had completed.

So, I definitely think you could use reiser4 to gain significant mail
delivery performance.  But you probably don't need  a specific plugin
outside the transaction subsystems.  The obvious benefit of only using
the transaction systems is that you won't need to teach mail clients
about the reiser4 plugin.

There's lots of other plugin topics related to teaching the FS about
various file formats.  This may or may not be a good idea in some cases,
but it is a good place for research.  I'd start by looking at the xattr
interfaces and Hans' ideas for FS-as-a-database.

-chris



  reply	other threads:[~2003-12-03 20:28 UTC|newest]

Thread overview: 3+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2003-12-03 19:59 FW: reiser4 plugin for maildir Burnes, James
2003-12-03 20:28 ` Chris Mason [this message]
2003-12-04 10:21   ` Nikita Danilov

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=1070483327.27597.121.camel@tiny.suse.com \
    --to=mason@suse.com \
    --cc=james.burnes@gwl.com \
    --cc=reiserfs-list@namesys.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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.