From: | Amit Langote <Langote_Amit_f8(at)lab(dot)ntt(dot)co(dot)jp> |
---|---|
To: | Robert Haas <rhaas(at)postgresql(dot)org>, pgsql-committers(at)postgresql(dot)org |
Cc: | Pg Hackers <pgsql-hackers(at)postgresql(dot)org> |
Subject: | PartitionSchemaData & partcollation (Re: [COMMITTERS] pgsql: Associate partitioning information with each RelOptInfo.) |
Date: | 2017-09-28 06:17:02 |
Message-ID: | 571d159d-ca5e-ab0a-1bbf-2cef66ba0e42@lab.ntt.co.jp |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-committers pgsql-hackers |
On 2017/09/21 12:42, Robert Haas wrote:
> Associate partitioning information with each RelOptInfo.
>
> This is not used for anything yet, but it is necessary infrastructure
> for partition-wise join and for partition pruning without constraint
> exclusion.
>
> Ashutosh Bapat, reviewed by Amit Langote and with quite a few changes,
> mostly cosmetic, by me. Additional review and testing of this patch
> series by Antonin Houska, Amit Khandekar, Rafia Sabih, Rajkumar
> Raghuwanshi, Thomas Munro, and Dilip Kumar.
I noticed that this commit does not add partcollation field to
PartitionSchemeData, while it adds parttypcoll. I think it'd be necessary
to have partcollation too, because partitioning would have used the same,
not parttypcoll. For, example see the following code in
partition_rbound_datum_cmp:
cmpval = DatumGetInt32(FunctionCall2Coll(&key->partsupfunc[i],
key->partcollation[i],
rb_datums[i],
tuple_datums[i]));
So, it would be wrong to use parttypcoll, if we are to use the collation
to match a clause with the partition bounds when doing partition-pruning.
Concretely, a clause's inputcollid should match partcollation for the
corresponding column, not the column's parttypcoll.
Attached is a patch that adds the same. I first thought of including it
in the partition-pruning patch set [1], but thought we could independently
fix this.
Thoughts?
Thanks,
Amit
Attachment | Content-Type | Size |
---|---|---|
0001-Add-partcollation-field-to-PartitionSchemeData-v1.patch | text/plain | 2.2 KB |
From | Date | Subject | |
---|---|---|---|
Next Message | Amit Langote | 2017-09-28 06:21:04 | Re: [HACKERS] PartitionSchemaData & partcollation (Re: pgsql: Associate partitioning information with each RelOptInfo.) |
Previous Message | Tom Lane | 2017-09-27 21:06:14 | pgsql: Fix behavior when converting a float infinity to numeric. |
From | Date | Subject | |
---|---|---|---|
Next Message | Amit Langote | 2017-09-28 06:21:04 | Re: [HACKERS] PartitionSchemaData & partcollation (Re: pgsql: Associate partitioning information with each RelOptInfo.) |
Previous Message | tushar | 2017-09-28 06:05:11 | Re: Binary search in fmgr_isbuiltin() is a bottleneck. |