Re: logical changeset generation v6.6 - Mailing list pgsql-hackers

From Andres Freund
Subject Re: logical changeset generation v6.6
Date
Msg-id 20131111170047.GF2401@awork2.anarazel.de
Whole thread Raw
In response to logical changeset generation v6  (Andres Freund <andres@2ndquadrant.com>)
Responses Re: logical changeset generation v6.6  (Robert Haas <robertmhaas@gmail.com>)
List 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

pgsql-hackers by date:

Previous
From: Andres Freund
Date:
Subject: Re: Add %z support to elog/ereport?
Next
From: Tom Lane
Date:
Subject: Re: Add %z support to elog/ereport?