From: | David Rowley <david(dot)rowley(at)2ndquadrant(dot)com> |
---|---|
To: | Amit Langote <Langote_Amit_f8(at)lab(dot)ntt(dot)co(dot)jp> |
Cc: | Rajkumar Raghuwanshi <rajkumar(dot)raghuwanshi(at)enterprisedb(dot)com>, Robert Haas <robertmhaas(at)gmail(dot)com>, Kyotaro HORIGUCHI <horiguchi(dot)kyotaro(at)lab(dot)ntt(dot)co(dot)jp>, Jesper Pedersen <jesper(dot)pedersen(at)redhat(dot)com>, Amit Langote <amitlangote09(at)gmail(dot)com>, Dilip Kumar <dilipbalaut(at)gmail(dot)com>, Beena Emerson <memissemerson(at)gmail(dot)com>, "pgsql-hackers(at)postgresql(dot)org" <pgsql-hackers(at)postgresql(dot)org> |
Subject: | Re: [HACKERS] path toward faster partition pruning |
Date: | 2018-02-21 10:15:17 |
Message-ID: | CAKJS1f-2gkPCv-_4UA049qGO41AC8B7Z5sGF4M7abzc=VmDfVw@mail.gmail.com |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-hackers |
On 21 February 2018 at 14:53, Amit Langote
<Langote_Amit_f8(at)lab(dot)ntt(dot)co(dot)jp> wrote:
> On 2018/02/21 10:19, David Rowley wrote:
>> v30-0004-Faster-partition-pruning.patch contains:
>>
>> +create table coll_pruning_multi (a text) partition by range
>> (substr(a, 1) collate "en_GB", substr(a, 1) collate "en_US");
>>
>> This'll likely work okay on Linux. Other collate tests seem to use
>> COLLATE "POSIX or "C" so that work cross-platform.
>
> Thanks. I completely forgot about that. I've rewritten those tests to
> use "POSIX" and "C" in the attached.
Thanks for fixing. I made a pass over v31 and only see a few small things:
1. In get_partitions_for_keys() why is the
get_partitions_excluded_by_ne_datums call not part of
get_partitions_for_keys_list?
2. Still a stray "minoff += 1;" in get_partitions_for_keys_range
3. You're also preferring to minoff--/++, but maxoff -= 1/maxoff += 1;
would be nice to see the style unified here.
4. "other other"
* that is, each of its fields other other than clauseinfo must be valid before
5. "a IS NULL" -> "an IS NULL":
* Based on a IS NULL or IS NOT NULL clause that was matched to a partition
6. Can you add a warning in the header comment for
extract_partition_clauses() to explain "Note: the 'clauses' List may
be modified inside this function. Callers may like to make a copy of
important lists before passing them to this function.", or something
like that...
7. "null" -> "nulls"
* Only allow strict operators. This will guarantee null are
8. "dicard" -> "discard"
* contains a <= 2, then because 3 <= 2 is false, we dicard a < 3 as
--
David Rowley http://www.2ndQuadrant.com/
PostgreSQL Development, 24x7 Support, Training & Services
From | Date | Subject | |
---|---|---|---|
Next Message | Marina Polyakova | 2018-02-21 10:20:18 | Re: master check fails on Windows Server 2008 |
Previous Message | Rajkumar Raghuwanshi | 2018-02-21 09:45:44 | Re: [HACKERS] Runtime Partition Pruning |