Re: Assert failure in _bt_preprocess_array_keys

Richard Guo <guofenglinux@gmail.com>

From: Richard Guo <guofenglinux@gmail.com>
To: Peter Geoghegan <pg@bowt.ie>
Cc: PostgreSQL-development <pgsql-hackers@postgresql.org>
Date: 2024-04-22T06:22:25Z
Lists: pgsql-hackers
On Mon, Apr 22, 2024 at 10:52 AM Peter Geoghegan <pg@bowt.ie> wrote:

> On Sun, Apr 21, 2024 at 10:36 PM Richard Guo <guofenglinux@gmail.com>
> wrote:
> > I didn't spend much time digging into it, but I wonder if this Assert is
> > sensible.  I noticed that before commit 5bf748b86b, the two datatypes
> > were not equal to each other either (anyrange vs. int4range).
>
> The assertion is wrong. It is testing behavior that's much older than
> commit 5bf748b86b, though. We can just get rid of it, since all of the
> information that we'll actually apply when preprocessing scan keys
> comes from the operator class.
>
> Pushed a fix removing the assertion just now. Thanks for the report.


That's so quick.  Thank you for the prompt fix.

Thanks
Richard

Commits

  1. Remove overzealous array element type assertion.

  2. Enhance nbtree ScalarArrayOp execution.