1 Return-Path: <gmn-notmuch@m.gmane.org>
\r
2 X-Original-To: notmuch@notmuchmail.org
\r
3 Delivered-To: notmuch@notmuchmail.org
\r
4 Received: from localhost (localhost [127.0.0.1])
\r
5 by olra.theworths.org (Postfix) with ESMTP id 23DC3431FBC
\r
6 for <notmuch@notmuchmail.org>; Thu, 14 Jan 2010 19:59:06 -0800 (PST)
\r
7 X-Virus-Scanned: Debian amavisd-new at olra.theworths.org
\r
11 X-Spam-Status: No, score=-0.718 tagged_above=-999 required=5
\r
12 tests=[AWL=-0.719, BAYES_50=0.001] autolearn=ham
\r
13 Received: from olra.theworths.org ([127.0.0.1])
\r
14 by localhost (olra.theworths.org [127.0.0.1]) (amavisd-new, port 10024)
\r
15 with ESMTP id aFK1DyAqrMI1 for <notmuch@notmuchmail.org>;
\r
16 Thu, 14 Jan 2010 19:59:05 -0800 (PST)
\r
17 Received: from lo.gmane.org (lo.gmane.org [80.91.229.12])
\r
18 by olra.theworths.org (Postfix) with ESMTP id 654C9431FAE
\r
19 for <notmuch@notmuchmail.org>; Thu, 14 Jan 2010 19:59:05 -0800 (PST)
\r
20 Received: from list by lo.gmane.org with local (Exim 4.50) id 1NVdKx-0006x5-0E
\r
21 for notmuch@notmuchmail.org; Fri, 15 Jan 2010 04:59:03 +0100
\r
22 Received: from ip-118-90-138-203.xdsl.xnet.co.nz ([118.90.138.203])
\r
23 by main.gmane.org with esmtp (Gmexim 0.1 (Debian))
\r
25 for <notmuch@notmuchmail.org>; Fri, 15 Jan 2010 04:59:02 +0100
\r
26 Received: from olly by ip-118-90-138-203.xdsl.xnet.co.nz with local (Gmexim
\r
27 0.1 (Debian)) id 1AlnuQ-0007hv-00
\r
28 for <notmuch@notmuchmail.org>; Fri, 15 Jan 2010 04:59:02 +0100
\r
29 X-Injected-Via-Gmane: http://gmane.org/
\r
30 To: notmuch@notmuchmail.org
\r
31 From: Olly Betts <olly@survex.com>
\r
32 Date: Fri, 15 Jan 2010 03:58:50 +0000 (UTC)
\r
34 Message-ID: <slrnhkvpvr.2rf.olly@msgid.survex.com>
\r
35 References: <5641883d1001140730l22832715ld6bdc95c9938d314@mail.gmail.com>
\r
36 X-Complaints-To: usenet@ger.gmane.org
\r
37 X-Gmane-NNTP-Posting-Host: ip-118-90-138-203.xdsl.xnet.co.nz
\r
38 User-Agent: slrn/pre1.0.0-11 (Linux)
\r
39 Sender: news <news@ger.gmane.org>
\r
40 Subject: Re: [notmuch] Notmuch performance problems on OSX
\r
41 X-BeenThere: notmuch@notmuchmail.org
\r
42 X-Mailman-Version: 2.1.13
\r
44 List-Id: "Use and development of the notmuch mail system."
\r
45 <notmuch.notmuchmail.org>
\r
46 List-Unsubscribe: <http://notmuchmail.org/mailman/options/notmuch>,
\r
47 <mailto:notmuch-request@notmuchmail.org?subject=unsubscribe>
\r
48 List-Archive: <http://notmuchmail.org/pipermail/notmuch>
\r
49 List-Post: <mailto:notmuch@notmuchmail.org>
\r
50 List-Help: <mailto:notmuch-request@notmuchmail.org?subject=help>
\r
51 List-Subscribe: <http://notmuchmail.org/mailman/listinfo/notmuch>,
\r
52 <mailto:notmuch-request@notmuchmail.org?subject=subscribe>
\r
53 X-List-Received-Date: Fri, 15 Jan 2010 03:59:06 -0000
\r
55 On 2010-01-14, Oliver Charles wrote:
\r
56 > I've installed the latest notmuch from Git at this time of writing,
\r
57 > along with Xapian from SVN head. However, just tagging a single thread
\r
58 > with only one message seems to take too long:
\r
60 One difference between OS X and other systems is that OS X supports the
\r
61 F_FULLSYNC ioctl, and other systems don't (currently, at least AFAIK)
\r
62 and Xapian uses that if it is available to ensure that changes have
\r
63 actually made it to disk:
\r
65 http://trac.xapian.org/ticket/288
\r
67 On other systems, it uses fdatasync() or fsync(), which typically just
\r
68 ensure that the data has left the OS - it can sit in disk controller or
\r
69 drive caches for potentially seconds longer. This call happens once
\r
70 per table for every (explicit or implicit) flush on a database.
\r
72 I can see an issue here which is that currently Xapian writes the base
\r
73 file for the table, then syncs it, then does the next table. I bet it
\r
74 would be more efficient to write them all and then sync them all,
\r
75 especially with F_FULLSYNC.
\r
77 I'll take a look at doing that, and have created a ticket for it:
\r
79 http://trac.xapian.org/ticket/426
\r
81 If after that this is still causing problems, it should probably be made
\r
82 configurable what (if any) flushing is done. If you're on a UPS-backed
\r
83 server, you probably don't need such paranoia.
\r