pgsql: Replace TS_execute's TS_EXEC_CALC_NOT flag with TS_EXEC_SKIP_NOT

From: Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>
To: pgsql-committers(at)lists(dot)postgresql(dot)org
Subject: pgsql: Replace TS_execute's TS_EXEC_CALC_NOT flag with TS_EXEC_SKIP_NOT
Date: 2020-07-24 19:44:08
Message-ID: E1jz3c0-0005EE-Sy@gemulon.postgresql.org
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-committers

Replace TS_execute's TS_EXEC_CALC_NOT flag with TS_EXEC_SKIP_NOT.

It's fairly silly that ignoring NOT subexpressions is TS_execute's
default behavior. It's wrong on its face and it encourages errors
of omission. Moreover, the only two remaining callers that aren't
specifying CALC_NOT are in ts_headline calculations, and it's very
arguable that those are bugs: if you've specified "!foo" in your
query, why would you want to get a headline that includes "foo"?

Hence, rip that out and change the default behavior to be to calculate
NOT accurately. As a concession to the slim chance that there is still
somebody somewhere who needs the incorrect behavior, provide a new
SKIP_NOT flag to explicitly request that.

Back-patch into v13, mainly because it seems better to change this
at the same time as the previous commit's rejiggering of TS_execute
related APIs. Any outside callers affected by this change are
probably also affected by that one.

Discussion: https://postgr.es/m/CALT9ZEE-aLotzBg-pOp2GFTesGWVYzXA3=mZKzRDa_OKnLF7Mg@mail.gmail.com

Branch
------
REL_13_STABLE

Details
-------
https://git.postgresql.org/pg/commitdiff/70eca6a9a6df679a86f30442194cc6b858b82000

Modified Files
--------------
src/backend/utils/adt/tsginidx.c | 4 ++--
src/backend/utils/adt/tsgistidx.c | 4 ++--
src/backend/utils/adt/tsrank.c | 2 +-
src/backend/utils/adt/tsvector_op.c | 8 ++++----
src/include/tsearch/ts_utils.h | 8 +++++---
5 files changed, 14 insertions(+), 12 deletions(-)

Browse pgsql-committers by date

  From Date Subject
Next Message Amit Kapila 2020-07-25 05:37:05 pgsql: Fix buffer usage stats for nodes above Gather Merge.
Previous Message Peter Eisentraut 2020-07-24 08:53:29 pgsql: Rename configure.in to configure.ac