Re: wal_synch_method = open_sync safe on RHEL 5.5?

From: Greg Smith <greg(at)2ndquadrant(dot)com>
To: Mark Kirkwood <mark(dot)kirkwood(at)catalyst(dot)net(dot)nz>
Cc: pgsql-performance(at)postgresql(dot)org
Subject: Re: wal_synch_method = open_sync safe on RHEL 5.5?
Date: 2010-06-18 03:29:36
Message-ID: 4C1AE820.6020506@2ndquadrant.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-performance

Mark Kirkwood wrote:
> Now I recall some discussion about this enabling direct io and the
> general flakiness of this on Linux, so is the option regarded as safe?

No one has ever refuted the claims in
http://archives.postgresql.org/pgsql-hackers/2007-10/msg01310.php that
it can be unsafe under a heavy enough level of mixed load on RHEL5.
Given the performance benefits are marginal on ext3, I haven't ever
considered it worth the risk. (I've seen much larger gains on
Linux+Veritas VxFS). From what I've seen, recent Linux kernel work has
reinforced that the old O_SYNC implementation was full of bugs now that
more work is being done to improve that area. My suspicion (based on no
particular data, just what I've seen it tested with) is that it only
really worked before in the very specific way that Oracle does O_SYNC
writes, which is different from what PostgreSQL does.

P.S. Be wary of expecting pgbench to give you useful numbers on a single
run. For the default write-heavy test, I recommend three runs of 10
minutes each (-T 600 on recent PostgreSQL versions) before I trust any
results it gives. You can get useful data from the select-only test in
only a few seconds, but not the one that writes a bunch.

--
Greg Smith 2ndQuadrant US Baltimore, MD
PostgreSQL Training, Services and Support
greg(at)2ndQuadrant(dot)com www.2ndQuadrant.us

In response to

Responses

Browse pgsql-performance by date

  From Date Subject
Next Message Mark Mielke 2010-06-18 03:36:03 Re: wal_synch_method = open_sync safe on RHEL 5.5?
Previous Message Mark Kirkwood 2010-06-18 01:39:43 wal_synch_method = open_sync safe on RHEL 5.5?