pgsql: Update obsolete row compare preprocessing comments.

From: Peter Geoghegan <pg(at)bowt(dot)ie>
To: pgsql-committers(at)lists(dot)postgresql(dot)org
Subject: pgsql: Update obsolete row compare preprocessing comments.
Date: 2025-11-29 21:43:19
Message-ID: E1vPSis-0021gH-2w@gemulon.postgresql.org
Views: Whole Thread | Raw Message | Download mbox | Resend email
Thread:
Lists: pgsql-committers

Update obsolete row compare preprocessing comments.

We have some limited ability to detect redundant and contradictory
conditions involving an nbtree row comparison key following commits
f09816a0 and bd3f59fd: we can do so in simple cases involving IS NULL
and IS NOT NULL keys on a row compare key's first column. We can
likewise determine that a scan's qual is unsatisfiable given a row
compare whose first subkey's arg is NULL. Update obsolete comments that
claimed that we merely copied row compares into the output key array
"without any editorialization".

Also update another _bt_preprocess_keys header comment paragraph: add a
parenthetical remark that points out that preprocessing will generate a
skip array for the preceding example qual. That will ultimate lead to
preprocessing marking the example's lower-order y key required -- which
is exactly what the example supposes cannot happen. Keep the original
comment, though, since it accurately describes the mechanical rules that
determine which keys get marked required in the absence of skip arrays
(which can occasionally still matter). This fixes an oversight in
commit 92fe23d9, which added the nbtree skip scan optimization.

Author: Peter Geoghegan <pg(at)bowt(dot)ie>
Backpatch-through: 18

Branch
------
REL_18_STABLE

Details
-------
https://git.postgresql.org/pg/commitdiff/4061992ea83adbfc6b0e4fa202d314ace83a2458

Modified Files
--------------
src/backend/access/nbtree/nbtpreprocesskeys.c | 23 ++++++++++++++++-------
1 file changed, 16 insertions(+), 7 deletions(-)

Browse pgsql-committers by date

  From Date Subject
Next Message David Rowley 2025-11-29 23:55:53 pgsql: Don't call simplify_aggref with a NULL PlannerInfo
Previous Message Andres Freund 2025-11-29 14:53:38 Re: pgsql: Inline pg_ascii_tolower() and pg_ascii_toupper().