Received: from localhost (maia-4.hub.org [200.46.204.183]) by postgresql.org (Postfix) with ESMTP id 6C4939FB4F7 for ; Wed, 4 Jul 2007 07:45:12 -0300 (ADT) Received: from postgresql.org ([200.46.204.71]) by localhost (mx1.hub.org [200.46.204.183]) (amavisd-maia, port 10024) with ESMTP id 83148-06 for ; Wed, 4 Jul 2007 07:45:08 -0300 (ADT) X-Greylist: from auto-whitelisted by SQLgrey-1.7.4 Received: from oxford.xeocode.com (unknown [62.232.55.118]) by postgresql.org (Postfix) with ESMTP id 45E889FB453 for ; Wed, 4 Jul 2007 07:45:08 -0300 (ADT) Received: from localhost ([127.0.0.1] helo=oxford.xeocode.com) by oxford.xeocode.com with esmtp (Exim 4.67) (envelope-from ) id 1I62M2-00010u-BL; Wed, 04 Jul 2007 11:45:02 +0100 From: Gregory Stark To: "Dimitri" Cc: "Heikki Linnakangas" , "PostgreSQL Performance" Subject: Re: Filesystem Direct I/O and WAL sync option In-Reply-To: <5482c80a0707040326v1229f11dh2a69278365c1de8c@mail.gmail.com> (dimitrik.fr@gmail.com's message of "Wed, 4 Jul 2007 12:26:10 +0200") Organization: EnterpriseDB References: <5482c80a0707030754o740c82b6s4598dc668720d014@mail.gmail.com> <468A65F5.8020800@enterprisedb.com> <5482c80a0707030826v38c59870ib90599ba43337e72@mail.gmail.com> <87lkdx0y5d.fsf@oxford.xeocode.com> <5482c80a0707040326v1229f11dh2a69278365c1de8c@mail.gmail.com> X-Draft-From: ("nnimap+mail01.enterprisedb.com:INBOX" 25054) Date: Wed, 04 Jul 2007 11:45:01 +0100 Message-ID: <87wsxgcus2.fsf@oxford.xeocode.com> User-Agent: Gnus/5.110006 (No Gnus v0.6) Emacs/21.4 (gnu/linux) MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii X-Virus-Scanned: Maia Mailguard 1.0.1 X-Archive-Number: 200707/29 X-Sequence-Number: 25713 "Dimitri" writes: > Yes Gregory, that's why I'm asking, because from 1800 transactions/sec > I'm jumping to 2800 transactions/sec! and it's more than important > performance level increase :)) wow. That's kind of suspicious though. Does the new configuration take advantage of the lack of the filesystem cache by increasing the size of shared_buffers? Even then I wouldn't expect such a big boost unless you got very lucky with the size of your working set compared to the two sizes of shared_buffers. It seems likely that somehow this change is not providing the same guarantees as fsync. Perhaps fsync is actually implementing IDE write barriers and the sync mode is just flushing buffers to the hard drive cache and then returning. What transaction rate do you get if you just have a single connection streaming inserts in autocommit mode? What kind of transaction rate do you get with both sync mode on and fsync=on in Postgres? And did you say this with a battery backed cache? In theory fsync=on/off and shouldn't make much difference at all with a battery backed cache. Stranger and stranger. -- Gregory Stark EnterpriseDB http://www.enterprisedb.com