Re: O_DSYNC broken on MacOS X? - Mailing list pgsql-hackers
From | Bruce Momjian |
---|---|
Subject | Re: O_DSYNC broken on MacOS X? |
Date | |
Msg-id | 201010191506.o9JF6ps00105@momjian.us Whole thread Raw |
In response to | Re: O_DSYNC broken on MacOS X? (Robert Haas <robertmhaas@gmail.com>) |
Responses |
Re: O_DSYNC broken on MacOS X?
|
List | pgsql-hackers |
Robert Haas wrote: > On Thu, Oct 7, 2010 at 11:52 AM, Tom Lane <tgl@sss.pgh.pa.us> wrote: > > Robert Haas <robertmhaas@gmail.com> writes: > >> Proposed doc patch attached. > > > > "discusesed"? ?Otherwise +1 > > Woops, thanks. Committed with that change. I back-patched it back to > 8.3, which is as far as it applied with only minor conflicts. I have applied the attached patch which mentions tools/fsync for testing fsync method performance, and clarified the new paragraph about sync methods. I am glad to see we are beefing up this area of the docs. -- Bruce Momjian <bruce@momjian.us> http://momjian.us EnterpriseDB http://enterprisedb.com + It's impossible for everything to be true. + diff --git a/doc/src/sgml/config.sgml b/doc/src/sgml/config.sgml index 87d182c..f178835 100644 --- a/doc/src/sgml/config.sgml +++ b/doc/src/sgml/config.sgml @@ -1569,13 +1569,13 @@ SET ENABLE_SEQSCAN TO OFF; </itemizedlist> <para> Not all of these choices are available on all platforms. - The default is the first method in the above list that is supported - by the platform. The default is not necessarily best; it may be - necessary to change this setting, or other aspects of your system - configuration, in order to create a crash-safe configuration, as - discussed in <xref linkend="wal-reliability">, or to achieve best - performance. The <literal>open_</>* options also use <literal>O_DIRECT</> if available. + The default is the first method in the above list that is supported + by the platform. The default is not necessarily ideal; it might be + necessary to change this setting or other aspects of your system + configuration in order to create a crash-safe configuration or + achieve optimal performance. + These aspects are discussed in <xref linkend="wal-reliability">. The utility <filename>src/tools/fsync</> in the PostgreSQL source tree can do performance testing of various fsync methods. This parameter can only be set in the <filename>postgresql.conf</> diff --git a/doc/src/sgml/wal.sgml b/doc/src/sgml/wal.sgml index 5678d6e..7b50bdd 100644 --- a/doc/src/sgml/wal.sgml +++ b/doc/src/sgml/wal.sgml @@ -530,11 +530,13 @@ <para> The <xref linkend="guc-wal-sync-method"> parameter determines how <productname>PostgreSQL</productname> will ask the kernel to force - <acronym>WAL</acronym> updates out to disk. - With the exception of <literal>fsync_writethrough</>, which can sometimes - force a flush of the disk cache even when other options do not do so, - all the options should be the same in terms of reliability. - However, it's quite platform-specific which one will be the fastest. + <acronym>WAL</acronym> updates out to disk. + All the options should be the same in terms of reliability, with + the exception of <literal>fsync_writethrough</>, which can sometimes + force a flush of the disk cache even when other options do not do so. + However, it's quite platform-specific which one will be the fastest; + you can test option speeds using the utility <filename>src/tools/fsync</> + in the PostgreSQL source tree. Note that this parameter is irrelevant if <varname>fsync</varname> has been turned off. </para>
pgsql-hackers by date: