]> granicus.if.org Git - postgresql/commit
Logical replication
authorPeter Eisentraut <peter_e@gmx.net>
Thu, 19 Jan 2017 17:00:00 +0000 (12:00 -0500)
committerPeter Eisentraut <peter_e@gmx.net>
Fri, 20 Jan 2017 14:04:49 +0000 (09:04 -0500)
commit665d1fad99e7b11678b0d5fa24d2898424243cd6
treeeefe3eb528f840780aef6c09939a1844dbabb30a
parentba61a04bc7fefeee03416d9911eb825c4897c223
Logical replication

- Add PUBLICATION catalogs and DDL
- Add SUBSCRIPTION catalog and DDL
- Define logical replication protocol and output plugin
- Add logical replication workers

From: Petr Jelinek <petr@2ndquadrant.com>
Reviewed-by: Steve Singer <steve@ssinger.info>
Reviewed-by: Andres Freund <andres@anarazel.de>
Reviewed-by: Erik Rijkers <er@xs4all.nl>
Reviewed-by: Peter Eisentraut <peter.eisentraut@2ndquadrant.com>
119 files changed:
doc/src/sgml/catalogs.sgml
doc/src/sgml/config.sgml
doc/src/sgml/filelist.sgml
doc/src/sgml/func.sgml
doc/src/sgml/logical-replication.sgml [new file with mode: 0644]
doc/src/sgml/monitoring.sgml
doc/src/sgml/postgres.sgml
doc/src/sgml/protocol.sgml
doc/src/sgml/ref/allfiles.sgml
doc/src/sgml/ref/alter_publication.sgml [new file with mode: 0644]
doc/src/sgml/ref/alter_subscription.sgml [new file with mode: 0644]
doc/src/sgml/ref/create_publication.sgml [new file with mode: 0644]
doc/src/sgml/ref/create_subscription.sgml [new file with mode: 0644]
doc/src/sgml/ref/drop_publication.sgml [new file with mode: 0644]
doc/src/sgml/ref/drop_subscription.sgml [new file with mode: 0644]
doc/src/sgml/ref/pg_dump.sgml
doc/src/sgml/ref/psql-ref.sgml
doc/src/sgml/reference.sgml
src/Makefile
src/backend/access/transam/xact.c
src/backend/catalog/Makefile
src/backend/catalog/aclchk.c
src/backend/catalog/catalog.c
src/backend/catalog/dependency.c
src/backend/catalog/objectaddress.c
src/backend/catalog/pg_publication.c [new file with mode: 0644]
src/backend/catalog/pg_shdepend.c
src/backend/catalog/pg_subscription.c [new file with mode: 0644]
src/backend/catalog/system_views.sql
src/backend/commands/Makefile
src/backend/commands/alter.c
src/backend/commands/dbcommands.c
src/backend/commands/define.c
src/backend/commands/dropcmds.c
src/backend/commands/event_trigger.c
src/backend/commands/publicationcmds.c [new file with mode: 0644]
src/backend/commands/subscriptioncmds.c [new file with mode: 0644]
src/backend/commands/tablecmds.c
src/backend/executor/Makefile
src/backend/executor/execMain.c
src/backend/executor/execReplication.c [new file with mode: 0644]
src/backend/nodes/copyfuncs.c
src/backend/nodes/equalfuncs.c
src/backend/parser/gram.y
src/backend/postmaster/bgworker.c
src/backend/postmaster/pgstat.c
src/backend/postmaster/postmaster.c
src/backend/replication/libpqwalreceiver/libpqwalreceiver.c
src/backend/replication/logical/Makefile
src/backend/replication/logical/launcher.c [new file with mode: 0644]
src/backend/replication/logical/proto.c [new file with mode: 0644]
src/backend/replication/logical/relation.c [new file with mode: 0644]
src/backend/replication/logical/worker.c [new file with mode: 0644]
src/backend/replication/pgoutput/Makefile [new file with mode: 0644]
src/backend/replication/pgoutput/pgoutput.c [new file with mode: 0644]
src/backend/replication/walreceiver.c
src/backend/storage/ipc/ipci.c
src/backend/storage/lmgr/lwlocknames.txt
src/backend/tcop/utility.c
src/backend/utils/cache/inval.c
src/backend/utils/cache/relcache.c
src/backend/utils/cache/syscache.c
src/backend/utils/misc/guc.c
src/backend/utils/misc/postgresql.conf.sample
src/bin/pg_dump/common.c
src/bin/pg_dump/pg_backup.h
src/bin/pg_dump/pg_backup_archiver.c
src/bin/pg_dump/pg_dump.c
src/bin/pg_dump/pg_dump.h
src/bin/pg_dump/pg_dump_sort.c
src/bin/pg_dump/pg_restore.c
src/bin/pg_dump/t/002_pg_dump.pl
src/bin/psql/command.c
src/bin/psql/describe.c
src/bin/psql/describe.h
src/bin/psql/help.c
src/bin/psql/tab-complete.c
src/include/catalog/dependency.h
src/include/catalog/indexing.h
src/include/catalog/pg_proc.h
src/include/catalog/pg_publication.h [new file with mode: 0644]
src/include/catalog/pg_publication_rel.h [new file with mode: 0644]
src/include/catalog/pg_subscription.h [new file with mode: 0644]
src/include/commands/defrem.h
src/include/commands/publicationcmds.h [new file with mode: 0644]
src/include/commands/subscriptioncmds.h [new file with mode: 0644]
src/include/executor/executor.h
src/include/nodes/nodes.h
src/include/nodes/parsenodes.h
src/include/parser/kwlist.h
src/include/pgstat.h
src/include/replication/logicallauncher.h [new file with mode: 0644]
src/include/replication/logicalproto.h [new file with mode: 0644]
src/include/replication/logicalrelation.h [new file with mode: 0644]
src/include/replication/logicalworker.h [new file with mode: 0644]
src/include/replication/pgoutput.h [new file with mode: 0644]
src/include/replication/walreceiver.h
src/include/replication/worker_internal.h [new file with mode: 0644]
src/include/storage/sinval.h
src/include/utils/acl.h
src/include/utils/inval.h
src/include/utils/rel.h
src/include/utils/relcache.h
src/include/utils/syscache.h
src/test/Makefile
src/test/perl/PostgresNode.pm
src/test/regress/expected/publication.out [new file with mode: 0644]
src/test/regress/expected/rules.out
src/test/regress/expected/sanity_check.out
src/test/regress/expected/subscription.out [new file with mode: 0644]
src/test/regress/parallel_schedule
src/test/regress/serial_schedule
src/test/regress/sql/publication.sql [new file with mode: 0644]
src/test/regress/sql/subscription.sql [new file with mode: 0644]
src/test/subscription/.gitignore [new file with mode: 0644]
src/test/subscription/Makefile [new file with mode: 0644]
src/test/subscription/README [new file with mode: 0644]
src/test/subscription/t/001_rep_changes.pl [new file with mode: 0644]
src/test/subscription/t/002_types.pl [new file with mode: 0644]