Re: BUG #16500: SQL Abend. select multi_key_columns_range_partition_table

From: Dmitry Dolgov <9erthalion6(at)gmail(dot)com>
To: Etsuro Fujita <etsuro(dot)fujita(at)gmail(dot)com>
Cc: hisanori(dot)kobayashi(dot)bp(at)nttdata(dot)com, PostgreSQL mailing lists <pgsql-bugs(at)lists(dot)postgresql(dot)org>
Subject: Re: BUG #16500: SQL Abend. select multi_key_columns_range_partition_table
Date: 2020-07-01 12:55:54
Message-ID: 20200701125554.hy7gtgju5b2dmyna@localhost
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-bugs

> On Thu, Jun 18, 2020 at 06:44:24PM +0200, Dmitry Dolgov wrote:
>
> Yep, I also can reproduce it easily. Can't say I'm familiar with this
> code, but after looking through it a bit it seems something strange is
> going on with a pruning step generated using prefix. Looks like it has
> only expressions for the second attribute of the partition key, but
> tries to compare with the full boundinfo. Without this pruning step the
> query above doesn't crash for me.

After some more investigation it seems that the issue is an empty prefix
in the code mentioned in my previous email. When it's constructed
BTGreaterStrategyNumber is excluded, which makes the logic somehow
dependend on the order or clauses (e.g. the original reported case would
be fine for a table with those two colums in other order), it looks
strange for me. Not sure if the attached fix is correct, but it allows
to avoid empty prefix, avoiding the crash, and passes the tests.

Attachment Content-Type Size
prefix.patch text/x-diff 2.2 KB

In response to

Responses

Browse pgsql-bugs by date

  From Date Subject
Next Message Tom Lane 2020-07-01 16:47:19 Re: [bug] Table not have typarray when created by single user mode
Previous Message Magnus Hagander 2020-07-01 10:54:49 Re: BUG #16522: No anti-violent cracking mechanism