Re: Some optimizations for COALESCE expressions during constant folding
David Rowley <dgrowleyml@gmail.com>
From: David Rowley <dgrowleyml@gmail.com>
To: Richard Guo <guofenglinux@gmail.com>
Cc: Pg Hackers <pgsql-hackers@lists.postgresql.org>
Date: 2025-11-25T13:10:45Z
Lists: pgsql-hackers
On Tue, 25 Nov 2025 at 23:51, Richard Guo <guofenglinux@gmail.com> wrote: > (I'm wondering whether it'd be better to consolidate the > non-null check for Const, Var, and CoalesceExpr into one helper > function to simplify the code in eval_const_expressions.) uhh, of course it is. That's what I did in [1] for Consts and expand expr_is_nonnullable() to support COALESCE exprs then modify eval_const_expressions_mutator() to use that rather than using var_is_nonnullable(). That way we'll not need to modify the constant folding code every time we think of something new that we can prove can't be NULL. David [1] https://www.postgresql.org/message-id/attachment/184166/v3-0001-Have-the-planner-replace-COUNT-ANY-with-COUNT-whe.patch