aboutsummaryrefslogtreecommitdiff
path: root/src/backend/commands/sequence.c
diff options
context:
space:
mode:
authorRobert Haas <rhaas@postgresql.org>2013-10-03 16:17:18 -0400
committerRobert Haas <rhaas@postgresql.org>2013-10-03 16:23:31 -0400
commitd90ced8bb22194cbb45f58beb0961251103aeff5 (patch)
tree6f11b8ffc02e1eaeb3ba9d80bf5cfbf8f9232c09 /src/backend/commands/sequence.c
parentc64e68fd9f1132fec563fb5de53dc3bcccb5fc3b (diff)
downloadpostgresql-d90ced8bb22194cbb45f58beb0961251103aeff5.tar.gz
postgresql-d90ced8bb22194cbb45f58beb0961251103aeff5.zip
Add DISCARD SEQUENCES command.
DISCARD ALL will now discard cached sequence information, as well. Fabrízio de Royes Mello, reviewed by Zoltán Böszörményi, with some further tweaks by me.
Diffstat (limited to 'src/backend/commands/sequence.c')
-rw-r--r--src/backend/commands/sequence.c16
1 files changed, 16 insertions, 0 deletions
diff --git a/src/backend/commands/sequence.c b/src/backend/commands/sequence.c
index ddfaf3bd293..3ec6b7654aa 100644
--- a/src/backend/commands/sequence.c
+++ b/src/backend/commands/sequence.c
@@ -1602,3 +1602,19 @@ seq_redo(XLogRecPtr lsn, XLogRecord *record)
pfree(localpage);
}
+
+/*
+ * Flush cached sequence information.
+ */
+void
+ResetSequenceCaches(void)
+{
+ SeqTableData *next;
+
+ while (seqtab != NULL)
+ {
+ next = seqtab->next;
+ free(seqtab);
+ seqtab = seqtab->next;
+ }
+}