diff options
Diffstat (limited to 'src/backend/commands/discard.c')
-rw-r--r-- | src/backend/commands/discard.c | 8 |
1 files changed, 7 insertions, 1 deletions
diff --git a/src/backend/commands/discard.c b/src/backend/commands/discard.c index 76f3ab672ad..9010368f577 100644 --- a/src/backend/commands/discard.c +++ b/src/backend/commands/discard.c @@ -18,13 +18,14 @@ #include "commands/async.h" #include "commands/discard.h" #include "commands/prepare.h" +#include "commands/sequence.h" #include "utils/guc.h" #include "utils/portal.h" static void DiscardAll(bool isTopLevel); /* - * DISCARD { ALL | TEMP | PLANS } + * DISCARD { ALL | SEQUENCES | TEMP | PLANS } */ void DiscardCommand(DiscardStmt *stmt, bool isTopLevel) @@ -39,6 +40,10 @@ DiscardCommand(DiscardStmt *stmt, bool isTopLevel) ResetPlanCache(); break; + case DISCARD_SEQUENCES: + ResetSequenceCaches(); + break; + case DISCARD_TEMP: ResetTempTableNamespace(); break; @@ -69,4 +74,5 @@ DiscardAll(bool isTopLevel) LockReleaseAll(USER_LOCKMETHOD, true); ResetPlanCache(); ResetTempTableNamespace(); + ResetSequenceCaches(); } |