mirror of
https://github.com/postgres/postgres.git
synced 2025-12-22 17:42:17 +03:00
Allow archiving via loadable modules.
Running a shell command for each file to be archived has a lot of overhead and may not offer as much error checking as you want, or the exact semantics that you want. So, offer the option to call a loadable module for each file to be archived, rather than running a shell command. Also, add a 'basic_archive' contrib module as an example implementation that archives to a local directory. Nathan Bossart, with a little bit of kibitzing by me. Discussion: http://postgr.es/m/20220202224433.GA1036711@nathanxps13
This commit is contained in:
@@ -102,8 +102,8 @@ PostgreSQL documentation
|
||||
<para>
|
||||
All WAL records required for the backup must contain sufficient full-page writes,
|
||||
which requires you to enable <varname>full_page_writes</varname> on the primary and
|
||||
not to use a tool like <application>pg_compresslog</application> as
|
||||
<varname>archive_command</varname> to remove full-page writes from WAL files.
|
||||
not to use a tool in your <varname>archive_library</varname> to remove
|
||||
full-page writes from WAL files.
|
||||
</para>
|
||||
</listitem>
|
||||
</itemizedlist>
|
||||
|
||||
@@ -40,7 +40,7 @@ PostgreSQL documentation
|
||||
<para>
|
||||
<application>pg_receivewal</application> streams the write-ahead
|
||||
log in real time as it's being generated on the server, and does not wait
|
||||
for segments to complete like <xref linkend="guc-archive-command"/> does.
|
||||
for segments to complete like <xref linkend="guc-archive-library"/> does.
|
||||
For this reason, it is not necessary to set
|
||||
<xref linkend="guc-archive-timeout"/> when using
|
||||
<application>pg_receivewal</application>.
|
||||
@@ -487,11 +487,11 @@ PostgreSQL documentation
|
||||
|
||||
<para>
|
||||
When using <application>pg_receivewal</application> instead of
|
||||
<xref linkend="guc-archive-command"/> as the main WAL backup method, it is
|
||||
<xref linkend="guc-archive-library"/> as the main WAL backup method, it is
|
||||
strongly recommended to use replication slots. Otherwise, the server is
|
||||
free to recycle or remove write-ahead log files before they are backed up,
|
||||
because it does not have any information, either
|
||||
from <xref linkend="guc-archive-command"/> or the replication slots, about
|
||||
from <xref linkend="guc-archive-library"/> or the replication slots, about
|
||||
how far the WAL stream has been archived. Note, however, that a
|
||||
replication slot will fill up the server's disk space if the receiver does
|
||||
not keep up with fetching the WAL data.
|
||||
|
||||
Reference in New Issue
Block a user