From: | "Tsunakawa, Takayuki" <tsunakawa(dot)takay(at)jp(dot)fujitsu(dot)com> |
---|---|
To: | 'Mike Palmiotto' <mike(dot)palmiotto(at)crunchydata(dot)com> |
Cc: | pgsql-hackers <pgsql-hackers(at)postgresql(dot)org> |
Subject: | RE: [RFC] [PATCH] Flexible "partition pruning" hook |
Date: | 2019-02-26 06:55:30 |
Message-ID: | 0A3221C70F24FB45833433255569204D1FBB5413@G01JPEXMBYT05 |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-hackers |
From: Mike Palmiotto [mailto:mike(dot)palmiotto(at)crunchydata(dot)com]
> Attached is a patch which attempts to solve a few problems:
>
> 1) Filtering out partitions flexibly based on the results of an external
> function call (supplied by an extension).
> 2) Filtering out partitions from pg_inherits based on the same function
> call.
> 3) Filtering out partitions from a partitioned table BEFORE the partition
> is actually opened on-disk.
What concrete problems would you expect this patch to solve? What kind of extensions do you imagine? I'd like to hear about the examples. For example, "PostgreSQL 12 will not be able to filter out enough partitions when planning/executing SELECT ... WHERE ... statement. But an extension like this can extract just one partition early."
Would this help the following issues with PostgreSQL 12?
* UPDATE/DELETE planning takes time in proportion to the number of partitions, even when the actually accessed partition during query execution is only one.
* Making a generic plan takes prohibitably long time (IIRC, about 12 seconds when the number of partitoons is 1,000 or 8,000.)
Regards
Takayuki Tsunakawa
From | Date | Subject | |
---|---|---|---|
Next Message | Nagaura, Ryohei | 2019-02-26 07:19:06 | inted RE: Timeout parameters |
Previous Message | David Steele | 2019-02-26 06:48:58 | Re: Remove Deprecated Exclusive Backup Mode |