</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</>
<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>