Re: = TRUE vs IS TRUE confuses partition index creation

Tom Lane <tgl@sss.pgh.pa.us>

From: Tom Lane <tgl@sss.pgh.pa.us>
To: Richard Guo <guofenglinux@gmail.com>
Cc: Christophe Pettus <xof@thebuild.com>, PostgreSQL mailing lists <pgsql-bugs@lists.postgresql.org>
Date: 2022-08-17T21:50:52Z
Lists: pgsql-bugs

Attachments

Richard Guo <guofenglinux@gmail.com> writes:
>> This can be verified with the attached changes, which would make it work
>> for this case.

I don't like this patch too much, because it will result in opening
the new index, building an IndexInfo, and closing the index again
for each index of each partition.  We only need to do that once.

Another thing that struck me as poor practice was not getting the
other arguments of CompareIndexInfo (opfamilies and collation)
from the new index.  At best this is making the code know more
than it needs to.

Hence, v2 patch attached, now with a test case.

			regards, tom lane

Commits

  1. Fix subtly-incorrect matching of parent and child partitioned indexes.