Re: Some optimizations for COALESCE expressions during constant folding

From: David Rowley <dgrowleyml(at)gmail(dot)com>
To: Richard Guo <guofenglinux(at)gmail(dot)com>
Cc: Pg Hackers <pgsql-hackers(at)lists(dot)postgresql(dot)org>
Subject: Re: Some optimizations for COALESCE expressions during constant folding
Date: 2025-11-25 13:10:45
Message-ID: CAApHDvpgz=4XY_nm2rhJvrC06Zfti9S00mjX8V+rgoPsSW_BZQ@mail.gmail.com
Views: Whole Thread | Raw Message | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

On Tue, 25 Nov 2025 at 23:51, Richard Guo <guofenglinux(at)gmail(dot)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

In response to

Responses

Browse pgsql-hackers by date

  From Date Subject
Next Message 河田達也 2025-11-25 13:11:12 Re: [PATCH] Add memory usage reporting to VACUUM VERBOSE
Previous Message Dagfinn Ilmari Mannsåker 2025-11-25 12:59:07 Re: Some optimizations for COALESCE expressions during constant folding