On 2017/11/06 13:15, David Rowley wrote:
> On 31 October 2017 at 21:43, Amit Langote <Langote_Amit_f8@lab.ntt.co.jp> wrote:
>> Attached updated version of the patches
>
> match_clauses_to_partkey() needs to allow for the way quals on Bool
> columns are represented.
>
> create table pt (a bool not null) partition by list (a);
> create table pt_true partition of pt for values in('t');
> create table pt_false partition of pt for values in('f');
> explain select * from pt where a = true;
> QUERY PLAN
> ------------------------------------------------------------------
> Append (cost=0.00..76.20 rows=2810 width=1)
> -> Seq Scan on pt_false (cost=0.00..38.10 rows=1405 width=1)
> Filter: a
> -> Seq Scan on pt_true (cost=0.00..38.10 rows=1405 width=1)
> Filter: a
> (5 rows)
>
> match_clause_to_indexcol() shows an example of how to handle this.
>
> explain select * from pt where a = false;
>
> will need to be allowed too. This works slightly differently.
You're right. I've fixed things to handle Boolean partitioning in the
updated set of patches I will post shortly.
Thanks,
Amit
--
Sent via pgsql-hackers mailing list (pgsql-hackers@postgresql.org)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-hackers