From 81e8224d6853ec9b603d622f29d95c0e4e3e7aac Mon Sep 17 00:00:00 2001 From: Zhang Mingli Date: Thu, 14 Dec 2023 08:58:05 +0800 Subject: [PATCH] Remove useless LIMIT_OPTION_DEFAULT. We process limit option as LIMIT_OPTION_WITH_TIES when using WITH TIES. All others are LIMIT_OPTION_COUNT. And check actual limit node in limit_needed(). There is no need to maintain a useless default limit enum. Authored-by: Zhang Mingli avamingli@gmail.com --- src/backend/parser/gram.y | 2 +- src/include/nodes/nodes.h | 3 +-- 2 files changed, 2 insertions(+), 3 deletions(-) diff --git a/src/backend/parser/gram.y b/src/backend/parser/gram.y index f16bbd3cdd..63f172e175 100644 --- a/src/backend/parser/gram.y +++ b/src/backend/parser/gram.y @@ -18461,7 +18461,7 @@ insertSelectOptions(SelectStmt *stmt, parser_errposition(exprLocation(limitClause->limitCount)))); stmt->limitCount = limitClause->limitCount; } - if (limitClause && limitClause->limitOption != LIMIT_OPTION_DEFAULT) + if (limitClause) { if (stmt->limitOption) ereport(ERROR, diff --git a/src/include/nodes/nodes.h b/src/include/nodes/nodes.h index 4c32682e4c..6e776a8aa6 100644 --- a/src/include/nodes/nodes.h +++ b/src/include/nodes/nodes.h @@ -439,8 +439,7 @@ typedef enum OnConflictAction typedef enum LimitOption { LIMIT_OPTION_COUNT, /* FETCH FIRST... ONLY */ - LIMIT_OPTION_WITH_TIES, /* FETCH FIRST... WITH TIES */ - LIMIT_OPTION_DEFAULT, /* No limit present */ + LIMIT_OPTION_WITH_TIES /* FETCH FIRST... WITH TIES */ } LimitOption; #endif /* NODES_H */ -- 2.34.1