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:

Previous
From: Dimitri Fontaine
Date:
Subject: Re: Extensions, this time with a patch
Next
From: Teodor Sigaev
Date:
Subject: Re: knngist - 0.8