Re: bug with expression index on partition
Amit Langote <langote_amit_f8@lab.ntt.co.jp>
From: Amit Langote <Langote_Amit_f8@lab.ntt.co.jp>
To: Pg Hackers <pgsql-hackers@postgresql.org>
Date: 2018-06-21T07:19:01Z
Lists: pgsql-hackers
Attachments
- v2-0001-Convert-indexParams-to-partition-s-attnos-before-.patch (text/plain) patch v2-0001
On 2018/06/21 15:35, Amit Langote wrote: > So, CompareIndexInfo and generateClonedIndexStmt are both doing the right > thing, but DefineIndex is not. Attached is a patch to fix DefineIndex so > that it converts indexParams before recursing to create the index on a > partition. I noticed that while CompareIndexInfo and generateClonedIndexStmt would reject the case where index expressions contain a whole-row Var, my patch didn't teach to do the same to DefineIndex, causing asymmetric behavior. So, whereas ATTACH PARTITION would error out when trying to clone a parent's index that contains a whole-row Var, recursively creating an index on partition won't. I updated the patch so that even DefineIndex will check if any whole-row Vars were encountered during conversion and error out if so. Thanks, Amit
Commits
-
When index recurses to a partition, map columns numbers
- 475be5e790e2 11.0 landed