1 | /*------------------------------------------------------------------------- |
2 | * |
3 | * pg_replication_origin.h |
4 | * definition of the "replication origin" system catalog |
5 | * (pg_replication_origin) |
6 | * |
7 | * Portions Copyright (c) 1996-2019, PostgreSQL Global Development Group |
8 | * Portions Copyright (c) 1994, Regents of the University of California |
9 | * |
10 | * src/include/catalog/pg_replication_origin.h |
11 | * |
12 | * NOTES |
13 | * The Catalog.pm module reads this file and derives schema |
14 | * information. |
15 | * |
16 | *------------------------------------------------------------------------- |
17 | */ |
18 | #ifndef PG_REPLICATION_ORIGIN_H |
19 | #define PG_REPLICATION_ORIGIN_H |
20 | |
21 | #include "catalog/genbki.h" |
22 | #include "catalog/pg_replication_origin_d.h" |
23 | |
24 | #include "access/xlogdefs.h" |
25 | |
26 | /* ---------------- |
27 | * pg_replication_origin. cpp turns this into |
28 | * typedef struct FormData_pg_replication_origin |
29 | * ---------------- |
30 | */ |
31 | CATALOG(pg_replication_origin,6000,ReplicationOriginRelationId) BKI_SHARED_RELATION |
32 | { |
33 | /* |
34 | * Locally known id that get included into WAL. |
35 | * |
36 | * This should never leave the system. |
37 | * |
38 | * Needs to fit into an uint16, so we don't waste too much space in WAL |
39 | * records. For this reason we don't use a normal Oid column here, since |
40 | * we need to handle allocation of new values manually. |
41 | */ |
42 | Oid roident; |
43 | |
44 | /* |
45 | * Variable-length fields start here, but we allow direct access to |
46 | * roname. |
47 | */ |
48 | |
49 | /* external, free-format, name */ |
50 | text roname BKI_FORCE_NOT_NULL; |
51 | |
52 | #ifdef CATALOG_VARLEN /* further variable-length fields */ |
53 | #endif |
54 | } FormData_pg_replication_origin; |
55 | |
56 | typedef FormData_pg_replication_origin *Form_pg_replication_origin; |
57 | |
58 | #endif /* PG_REPLICATION_ORIGIN_H */ |
59 | |