Re: logical changeset generation v6.6

From: Andres Freund <andres(at)2ndquadrant(dot)com>
To: pgsql-hackers(at)postgresql(dot)org
Subject: Re: logical changeset generation v6.6
Date: 2013-11-11 17:00:47
Message-ID: 20131111170047.GF2401@awork2.anarazel.de
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

Hi,

Changes since last version:
* fixes around the logging of toasted columns for the REPLICA IDENTITY
in UPDATE/DELETE. Found due to a question of Robert's.
* Initial documentation for the additional wal_level, but that will
require additional links once further patches of the series are committed.
* Comment, elog/ereport, indentation impovements in many of the patches
* Add the isolationtester tests to "make check"
contrib/test_logical_decoding and introduce "installcheck-force" that
forces an installcheck run even though it requires special
configuration parameters.
* the heap rewrite checkpoint code now skips over files not named
"map-*" instead of complaining if it cannot sscanf() the filename.
* pg_stat_logical_decoding system view: 'renamed' the numeric 'database'
column in 'dboid' and added a join to pg_database
* Remove several FIXMEs by implementing support for dropping data of
transactions that were running before a crash.
* Add CRC32 to snapbuild state files

Questions:
* Should we rename (INIT|START|FREE)_LOGICAL_REPLICATION into
*_LOGICAL_DECODING?
* Should we rename FREE_LOGICAL_REPLICATION into
STOP_LOGICAL_REPLICATION? stop_logical_replication() currently is the
SQL level function...

Todo:
* Implement timeline handling. We need to switch timelines when extracting
changes on a standby. I think we need to readTimeLineHistory() and
then liOfPointInHistory() for every segment.
* Once guc and recovery.conf are merged, we might want to support using
recovery_command to gather older wal files.

I am starting to be rather happy with the state of the patch.

01 wal_decoding: Add wal_level = logical and log data required for logical decoding
02 wal_decoding: Log xl_running_xact's at a higher frequency than checkpoints are done
03 wal_decoding: Add option to use user defined tables as catalog tables
04 wal_decoding: Introduce wal decoding via catalog timetravel
05 wal_decoding: Implement VACUUM FULL/CLUSTER support via rewrite maps
* should probably be merged with 04, kept separate for review
06 wal_decoding: Only peg the xmin horizon for catalog tables during logical decoding
07 wal_decoding: Allow walsender's to connect to a specific database
08 wal_decoding: logical changeset extraction walsender interface
09 wal_decoding: test_decoding: Add a simple decoding module in contrib
10 wal_decoding: pg_recvlogical: Introduce pg_receivexlog equivalent for logical changes
11 wal_decoding: test_logical_decoding: Add extension for easier testing of logical decoding
12 wal_decoding: design document v2.4 and snapshot building design doc v0.5
13 wal_decoding: Temporarily add logical decoding regression tests to everything
* shouldn't be committed, but it's useful for testing

Greetings,

Andres Freund

--
Andres Freund http://www.2ndQuadrant.com/
PostgreSQL Development, 24x7 Support, Training & Services

Attachment Content-Type Size
0001-wal_decoding-Add-wal_level-logical-and-log-data-requ.patch.gz application/x-patch-gzip 16.6 KB
0002-wal_decoding-Log-xl_running_xact-s-at-a-higher-frequ.patch.gz application/x-patch-gzip 3.1 KB
0003-wal_decoding-Add-option-to-use-user-defined-tables-a.patch.gz application/x-patch-gzip 1.7 KB
0004-wal_decoding-Introduce-wal-decoding-via-catalog-time.patch.gz application/x-patch-gzip 67.4 KB
0005-wal_decoding-Implement-VACUUM-FULL-CLUSTER-support-v.patch.gz application/x-patch-gzip 12.6 KB
0006-wal_decoding-Only-peg-the-xmin-horizon-for-catalog-t.patch.gz application/x-patch-gzip 5.3 KB
0007-wal_decoding-Allow-walsender-s-to-connect-to-a-speci.patch.gz application/x-patch-gzip 4.0 KB
0008-wal_decoding-logical-changeset-extraction-walsender-.patch.gz application/x-patch-gzip 10.2 KB
0009-wal_decoding-test_decoding-Add-a-simple-decoding-mod.patch.gz application/x-patch-gzip 3.6 KB
0010-wal_decoding-pg_recvlogical-Introduce-pg_receivexlog.patch.gz application/x-patch-gzip 9.0 KB
0011-wal_decoding-test_logical_decoding-Add-extension-for.patch.gz application/x-patch-gzip 23.2 KB
0012-wal_decoding-design-document-v2.4-and-snapshot-build.patch.gz application/x-patch-gzip 12.9 KB
0013-wal_decoding-Temporarily-add-logical-decoding-regres.patch.gz application/x-patch-gzip 1.6 KB

In response to

Responses

Browse pgsql-hackers by date

  From Date Subject
Next Message Tom Lane 2013-11-11 17:01:40 Re: Add %z support to elog/ereport?
Previous Message Andres Freund 2013-11-11 16:51:06 Re: Add %z support to elog/ereport?