diff options
Diffstat (limited to 'src/include')
-rw-r--r-- | src/include/catalog/catversion.h | 2 | ||||
-rw-r--r-- | src/include/catalog/indexing.h | 3 | ||||
-rw-r--r-- | src/include/catalog/pg_sequence.h | 30 | ||||
-rw-r--r-- | src/include/commands/sequence.h | 29 | ||||
-rw-r--r-- | src/include/utils/syscache.h | 1 |
5 files changed, 43 insertions, 22 deletions
diff --git a/src/include/catalog/catversion.h b/src/include/catalog/catversion.h index e13e3991df8..5779f0d617f 100644 --- a/src/include/catalog/catversion.h +++ b/src/include/catalog/catversion.h @@ -53,6 +53,6 @@ */ /* yyyymmddN */ -#define CATALOG_VERSION_NO 201612121 +#define CATALOG_VERSION_NO 201612201 #endif diff --git a/src/include/catalog/indexing.h b/src/include/catalog/indexing.h index 40f7576b7b6..293985db4ec 100644 --- a/src/include/catalog/indexing.h +++ b/src/include/catalog/indexing.h @@ -209,6 +209,9 @@ DECLARE_UNIQUE_INDEX(pg_rewrite_oid_index, 2692, on pg_rewrite using btree(oid o DECLARE_UNIQUE_INDEX(pg_rewrite_rel_rulename_index, 2693, on pg_rewrite using btree(ev_class oid_ops, rulename name_ops)); #define RewriteRelRulenameIndexId 2693 +DECLARE_UNIQUE_INDEX(pg_sequence_seqrelid_index, 5002, on pg_sequence using btree(seqrelid oid_ops)); +#define SequenceRelidIndexId 5002 + DECLARE_INDEX(pg_shdepend_depender_index, 1232, on pg_shdepend using btree(dbid oid_ops, classid oid_ops, objid oid_ops, objsubid int4_ops)); #define SharedDependDependerIndexId 1232 DECLARE_INDEX(pg_shdepend_reference_index, 1233, on pg_shdepend using btree(refclassid oid_ops, refobjid oid_ops)); diff --git a/src/include/catalog/pg_sequence.h b/src/include/catalog/pg_sequence.h new file mode 100644 index 00000000000..3bcda6bef17 --- /dev/null +++ b/src/include/catalog/pg_sequence.h @@ -0,0 +1,30 @@ +#ifndef PG_SEQUENCE_H +#define PG_SEQUENCE_H + +#include "catalog/genbki.h" + +#define SequenceRelationId 2224 + +CATALOG(pg_sequence,2224) BKI_WITHOUT_OIDS +{ + Oid seqrelid; + int64 seqstart; + int64 seqincrement; + int64 seqmax; + int64 seqmin; + int64 seqcache; + bool seqcycle; +} FormData_pg_sequence; + +typedef FormData_pg_sequence *Form_pg_sequence; + +#define Natts_pg_sequence 7 +#define Anum_pg_sequence_seqrelid 1 +#define Anum_pg_sequence_seqstart 2 +#define Anum_pg_sequence_seqincrement 3 +#define Anum_pg_sequence_seqmax 4 +#define Anum_pg_sequence_seqmin 5 +#define Anum_pg_sequence_seqcache 6 +#define Anum_pg_sequence_seqcycle 7 + +#endif /* PG_SEQUENCE_H */ diff --git a/src/include/commands/sequence.h b/src/include/commands/sequence.h index 6695bbe4c7a..1fd75b216df 100644 --- a/src/include/commands/sequence.h +++ b/src/include/commands/sequence.h @@ -22,38 +22,24 @@ #include "storage/relfilenode.h" -typedef struct FormData_pg_sequence +typedef struct FormData_pg_sequence_data { - NameData sequence_name; int64 last_value; - int64 start_value; - int64 increment_by; - int64 max_value; - int64 min_value; - int64 cache_value; int64 log_cnt; - bool is_cycled; bool is_called; -} FormData_pg_sequence; +} FormData_pg_sequence_data; -typedef FormData_pg_sequence *Form_pg_sequence; +typedef FormData_pg_sequence_data *Form_pg_sequence_data; /* * Columns of a sequence relation */ -#define SEQ_COL_NAME 1 -#define SEQ_COL_LASTVAL 2 -#define SEQ_COL_STARTVAL 3 -#define SEQ_COL_INCBY 4 -#define SEQ_COL_MAXVALUE 5 -#define SEQ_COL_MINVALUE 6 -#define SEQ_COL_CACHE 7 -#define SEQ_COL_LOG 8 -#define SEQ_COL_CYCLE 9 -#define SEQ_COL_CALLED 10 +#define SEQ_COL_LASTVAL 1 +#define SEQ_COL_LOG 2 +#define SEQ_COL_CALLED 3 -#define SEQ_COL_FIRSTCOL SEQ_COL_NAME +#define SEQ_COL_FIRSTCOL SEQ_COL_LASTVAL #define SEQ_COL_LASTCOL SEQ_COL_CALLED /* XLOG stuff */ @@ -77,6 +63,7 @@ extern Datum pg_sequence_last_value(PG_FUNCTION_ARGS); extern ObjectAddress DefineSequence(ParseState *pstate, CreateSeqStmt *stmt); extern ObjectAddress AlterSequence(ParseState *pstate, AlterSeqStmt *stmt); +extern void DeleteSequenceTuple(Oid relid); extern void ResetSequence(Oid seq_relid); extern void ResetSequenceCaches(void); diff --git a/src/include/utils/syscache.h b/src/include/utils/syscache.h index 39fe947d6e7..4b7631e7634 100644 --- a/src/include/utils/syscache.h +++ b/src/include/utils/syscache.h @@ -81,6 +81,7 @@ enum SysCacheIdentifier REPLORIGIDENT, REPLORIGNAME, RULERELNAME, + SEQRELID, STATRELATTINH, TABLESPACEOID, TRFOID, |