aboutsummaryrefslogtreecommitdiff
path: root/src/backend/optimizer/util
diff options
context:
space:
mode:
authorAlexander Korotkov <akorotkov@postgresql.org>2024-02-16 16:02:00 +0200
committerAlexander Korotkov <akorotkov@postgresql.org>2024-02-16 16:02:00 +0200
commitd57b7cc3338e9d9aa1d7c5da1b25a17c5a72dcce (patch)
treec70979d3d376696123e38e42f7e9f54fa8f147a0 /src/backend/optimizer/util
parenteb49e1bdd90b0f0434c01e6e00dedcd9466b5a6e (diff)
downloadpostgresql-d57b7cc3338e9d9aa1d7c5da1b25a17c5a72dcce.tar.gz
postgresql-d57b7cc3338e9d9aa1d7c5da1b25a17c5a72dcce.zip
Add missing check_stack_depth() to some recursive functions
Reported-by: Egor Chindyaskin, Alexander Lakhin Discussion: https://postgr.es/m/1672760457.940462079%40f306.i.mail.ru
Diffstat (limited to 'src/backend/optimizer/util')
-rw-r--r--src/backend/optimizer/util/clauses.c4
1 files changed, 4 insertions, 0 deletions
diff --git a/src/backend/optimizer/util/clauses.c b/src/backend/optimizer/util/clauses.c
index 94eb56a1e79..edc25d712e9 100644
--- a/src/backend/optimizer/util/clauses.c
+++ b/src/backend/optimizer/util/clauses.c
@@ -2423,6 +2423,10 @@ static Node *
eval_const_expressions_mutator(Node *node,
eval_const_expressions_context *context)
{
+
+ /* since this function recurses, it could be driven to stack overflow */
+ check_stack_depth();
+
if (node == NULL)
return NULL;
switch (nodeTag(node))