Forcing current WAL file to be archived - Mailing list pgsql-patches

From Simon Riggs
Subject Forcing current WAL file to be archived
Date
Msg-id 1154384790.3226.21.camel@localhost.localdomain
Whole thread Raw
Responses Re: Forcing current WAL file to be archived
List pgsql-patches
Patch included to implement xlog switching, using an xlog record
"processing instruction" and forcibly moving xlog pointers.

1. Happens automatically on pg_stop_backup()

2. Can happen manually via pg_switch_xlog()

3. Implement range of utility functions:
    pg_current_wal_offset()
    pg_current_xlogfile()
    pg_current_xlogfile_offset() - for Hannu
    pg_xlogfile_from_wal_offset() for interpreting output from
pg_switch_xlog, pg_start/stop_backup()

Passes make check, applies cleanly to HEAD, includes doc patches with
clean SGML builds.

Design as clean as possible given and has implementation of
archive_timeout in mind also. Happy to work further on any code cleanups
requested.

I've done a variety of testing on it, doing concurrent pg_regress and
pg_switch_xlog(). All known issues resolved. Main test cases and sample
outputs are in switchtest.sh

Wide variety of cases need testing, so I'm expecting some further issues
to be reported.

I'm now working on completing the restartable recovery patch, which will
include further tests of PITR recoveries on the xswitch.patch.

--
  Simon Riggs
  EnterpriseDB          http://www.enterprisedb.com

Attachment

pgsql-patches by date:

Previous
From: "Joshua D. Drake"
Date:
Subject: Re: [HACKERS] 8.2 features?
Next
From: Simon Riggs
Date:
Subject: WIP archive_timeout patch