<!-- $Header: /cvsroot/pgsql/doc/src/sgml/ref/checkpoint.sgml,v 1.3 2001/01/27 10:19:52 petere Exp $ -->

<refentry id="sql-checkpoint">
 <docinfo>
  <date>2001-01-24</date>
 </docinfo>

 <refmeta>
  <refentrytitle id="sql-checkpoint-title">CHECKPOINT</refentrytitle>
  <refmiscinfo>SQL - Language Statements</refmiscinfo>
 </refmeta>

 <refnamediv>
  <refname>CHECKPOINT</refname>
  <refpurpose>Force transaction log checkpoint</refpurpose>
 </refnamediv>

 <refsynopsisdiv>
<synopsis>
CHECKPOINT
</synopsis>
 </refsynopsisdiv>

 <refsect1>
  <title>Description</title>

  <para>
   Write-Ahead Logging (WAL) puts a checkpoint in the transaction log
   every 300 seconds by default.  (This may be changed by the run-time
   configuration option <parameter>CHECKPOINT_TIMEOUT</parameter>.)
   The <command>CHECKPOINT</command> command forces a checkpoint at
   the point at which the command is issued.  The next automatic
   checkpoint will still happen after the original cycle expires.
  </para>

  <para>
   A checkpoint is a point in the transaction log sequence at which
   all data files have been updated to reflect the information in the
   log.  All data files will be flushed to disk.  Refer to the
   <citetitle>PostgreSQL Administrator's Guide</citetitle> for more
   information about the WAL system.
  </para>

  <para>
   Only superusers may call <command>CHECKPOINT</command>.  The command is
   not intended for use during normal operation.
  </para>
 </refsect1>

 <refsect1>
  <title>See Also</title>

  <para>
   <citetitle>PostgreSQL Administrator's Guide</citetitle>
  </para>
 </refsect1>

 <refsect1>
  <title>Compatibility</title>

  <para>
   The <command>CHECKPOINT</command> command is a
   <productname>PostgreSQL</productname> language extension.
  </para>
 </refsect1>
</refentry>
