1
0
mirror of https://github.com/postgrespro/pg_probackup.git synced 2025-01-24 11:46:31 +02:00
Michael Paquier ced83f7703 Fix WAL segment file generation
Name file of WAL segment was generated using the API of xlog_internal.h
called XlogFileName, based on XLogSegNo and not XLogRecPtr as the
previous code assumed. This leaded to backup incorrect, actually too
many WAL files in the archive code path because the analysis was based
on a name completely fucked up. This commit fixes at the same time an
issue in search_next_wal where the function could loop for a too long
amount of time, eating much CPU when looking for the next WAL file.

Regression tests are passing cleanly with this patch.
2013-12-25 08:17:01 +09:00
2013-12-18 19:25:26 +08:00
2013-12-13 01:02:43 +09:00
2013-12-25 08:17:01 +09:00
2013-12-25 05:27:25 +09:00
2013-12-25 03:48:36 +09:00
2013-12-16 01:10:29 +09:00
2013-12-18 19:25:26 +08:00
2013-12-25 08:17:01 +09:00
2013-12-25 03:48:36 +09:00
2013-12-15 22:07:32 +09:00
2013-12-25 08:17:01 +09:00
2013-12-25 08:17:01 +09:00

pg_rman
=======

pg_rman is a backup and recovery manager for PostgreSQL servers able to do
incremental, archive and full backup as well as restore a cluster to a
state defined by a given recovery target. It is designed to perform
periodic backups of an existing PostgreSQL server, combined with WAL
archives to provide a way to recover a server in case of failure of
server because of a reason or another. Its incremental and archive backup
facilities reduces the amount of data necessary to be taken between
two consecutive backups.

Download
--------

The latest version of this software can be found on the project website at
https://github.com/michaelpq/pg_rman.

Installation
------------

Compiling pg_rman requires a PostgreSQL installation and can be done in
two ways:

1. Put pg_rman project directory inside PostgreSQL source tree as
contrib/pg_rman, and use "make" to compile

or

2. Keep the project directory as-is and use the PGXS development
infrastructure provided by a PostgreSQL installation to perform the
compilation: "make USE_PGXS=1"

In addition, you must have pg_config in $PATH.

The current version of pg_rman is compatible with PostgreSQL 9.3 and
upper versions.

Platforms
---------

pg_rman has been tested on Linux and Unix-based platforms.

Documentation
-------------

All the documentation is written and maintained in pg_rman.txt.

Regression tests
----------------

The test suite of pg_rman is available in the code tree and can be
launched in a way similar to common PostgreSQL extensions and modules:

1) "make check" or "make installcheck" if the project directory is
located in PostgreSQL code tree.

2) "make installcheck" on an already installed server if project
directory is kept as-is.

License
-------

pg_rman can be distributed under the PostgreSQL license. See COPYRIGHT
file for more information.
Languages
Python 59%
C 38.3%
Shell 2.4%
Perl 0.2%
Makefile 0.1%