diff options
| author | Peter Eisentraut | 2017-01-19 17:00:00 +0000 |
|---|---|---|
| committer | Peter Eisentraut | 2017-01-20 14:04:49 +0000 |
| commit | 665d1fad99e7b11678b0d5fa24d2898424243cd6 (patch) | |
| tree | eefe3eb528f840780aef6c09939a1844dbabb30a /src/include/commands | |
| parent | ba61a04bc7fefeee03416d9911eb825c4897c223 (diff) | |
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>
Diffstat (limited to 'src/include/commands')
| -rw-r--r-- | src/include/commands/defrem.h | 1 | ||||
| -rw-r--r-- | src/include/commands/publicationcmds.h | 28 | ||||
| -rw-r--r-- | src/include/commands/subscriptioncmds.h | 27 |
3 files changed, 56 insertions, 0 deletions
diff --git a/src/include/commands/defrem.h b/src/include/commands/defrem.h index 6eb4f95fdd..558a91d06f 100644 --- a/src/include/commands/defrem.h +++ b/src/include/commands/defrem.h @@ -154,5 +154,6 @@ extern int64 defGetInt64(DefElem *def); extern List *defGetQualifiedName(DefElem *def); extern TypeName *defGetTypeName(DefElem *def); extern int defGetTypeLength(DefElem *def); +extern List *defGetStringList(DefElem *def); #endif /* DEFREM_H */ diff --git a/src/include/commands/publicationcmds.h b/src/include/commands/publicationcmds.h new file mode 100644 index 0000000000..2307cea070 --- /dev/null +++ b/src/include/commands/publicationcmds.h @@ -0,0 +1,28 @@ +/*------------------------------------------------------------------------- + * + * publicationcmds.h + * prototypes for publicationcmds.c. + * + * + * Portions Copyright (c) 1996-2016, PostgreSQL Global Development Group + * Portions Copyright (c) 1994, Regents of the University of California + * + * src/include/commands/publicationcmds.h + * + *------------------------------------------------------------------------- + */ + +#ifndef PUBLICATIONCMDS_H +#define PUBLICATIONCMDS_H + +#include "nodes/parsenodes.h" + +extern ObjectAddress CreatePublication(CreatePublicationStmt *stmt); +extern void AlterPublication(AlterPublicationStmt *stmt); +extern void RemovePublicationById(Oid pubid); +extern void RemovePublicationRelById(Oid proid); + +extern ObjectAddress AlterPublicationOwner(const char *name, Oid newOwnerId); +extern void AlterPublicationOwner_oid(Oid pubid, Oid newOwnerId); + +#endif /* PUBLICATIONCMDS_H */ diff --git a/src/include/commands/subscriptioncmds.h b/src/include/commands/subscriptioncmds.h new file mode 100644 index 0000000000..1d8e2aa412 --- /dev/null +++ b/src/include/commands/subscriptioncmds.h @@ -0,0 +1,27 @@ +/*------------------------------------------------------------------------- + * + * subscriptioncmds.h + * prototypes for subscriptioncmds.c. + * + * + * Portions Copyright (c) 1996-2016, PostgreSQL Global Development Group + * Portions Copyright (c) 1994, Regents of the University of California + * + * src/include/commands/subscriptioncmds.h + * + *------------------------------------------------------------------------- + */ + +#ifndef SUBSCRIPTIONCMDS_H +#define SUBSCRIPTIONCMDS_H + +#include "nodes/parsenodes.h" + +extern ObjectAddress CreateSubscription(CreateSubscriptionStmt *stmt); +extern ObjectAddress AlterSubscription(AlterSubscriptionStmt *stmt); +extern void DropSubscription(DropSubscriptionStmt *stmt); + +extern ObjectAddress AlterSubscriptionOwner(const char *name, Oid newOwnerId); +extern void AlterSubscriptionOwner_oid(Oid subid, Oid newOwnerId); + +#endif /* SUBSCRIPTIONCMDS_H */ |
