v1-0001-Remove-useless-LIMIT_OPTION_DEFAULT.patch
application/octet-stream
Filename: v1-0001-Remove-useless-LIMIT_OPTION_DEFAULT.patch
Type: application/octet-stream
Part: 0
Message:
useless LIMIT_OPTION_DEFAULT
Patch
Format: format-patch
Series: patch v1-0001
Subject: Remove useless LIMIT_OPTION_DEFAULT.
| File | + | − |
|---|---|---|
| src/backend/parser/gram.y | 1 | 1 |
| src/include/nodes/nodes.h | 1 | 2 |
From 81e8224d6853ec9b603d622f29d95c0e4e3e7aac Mon Sep 17 00:00:00 2001
From: Zhang Mingli <avamingli@gmail.com>
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