|
- /*-------------------------------------------------------------------------
- *
- * replnodes.h
- * definitions for replication grammar parse nodes
- *
- *
- * Portions Copyright (c) 1996-2019, PostgreSQL Global Development Group
- * Portions Copyright (c) 1994, Regents of the University of California
- *
- * src/include/nodes/replnodes.h
- *
- *-------------------------------------------------------------------------
- */
- #ifndef REPLNODES_H
- #define REPLNODES_H
-
- #include "access/xlogdefs.h"
- #include "nodes/pg_list.h"
-
- typedef enum ReplicationKind
- {
- REPLICATION_KIND_PHYSICAL,
- REPLICATION_KIND_LOGICAL
- } ReplicationKind;
-
-
- /* ----------------------
- * IDENTIFY_SYSTEM command
- * ----------------------
- */
- typedef struct IdentifySystemCmd
- {
- NodeTag type;
- } IdentifySystemCmd;
-
-
- /* ----------------------
- * BASE_BACKUP command
- * ----------------------
- */
- typedef struct BaseBackupCmd
- {
- NodeTag type;
- List *options;
- } BaseBackupCmd;
-
-
- /* ----------------------
- * CREATE_REPLICATION_SLOT command
- * ----------------------
- */
- typedef struct CreateReplicationSlotCmd
- {
- NodeTag type;
- char *slotname;
- ReplicationKind kind;
- char *plugin;
- bool temporary;
- List *options;
- } CreateReplicationSlotCmd;
-
-
- /* ----------------------
- * DROP_REPLICATION_SLOT command
- * ----------------------
- */
- typedef struct DropReplicationSlotCmd
- {
- NodeTag type;
- char *slotname;
- bool wait;
- } DropReplicationSlotCmd;
-
-
- /* ----------------------
- * START_REPLICATION command
- * ----------------------
- */
- typedef struct StartReplicationCmd
- {
- NodeTag type;
- ReplicationKind kind;
- char *slotname;
- TimeLineID timeline;
- XLogRecPtr startpoint;
- List *options;
- } StartReplicationCmd;
-
-
- /* ----------------------
- * TIMELINE_HISTORY command
- * ----------------------
- */
- typedef struct TimeLineHistoryCmd
- {
- NodeTag type;
- TimeLineID timeline;
- } TimeLineHistoryCmd;
-
- /* ----------------------
- * SQL commands
- * ----------------------
- */
- typedef struct SQLCmd
- {
- NodeTag type;
- } SQLCmd;
-
- #endif /* REPLNODES_H */
|