Re: pgsql: Support partition pruning at execution time
David Rowley <david.rowley@2ndquadrant.com>
From: David Rowley <david.rowley@2ndquadrant.com>
To: Tom Lane <tgl@sss.pgh.pa.us>
Cc: Alvaro Herrera <alvherre@alvh.no-ip.org>,
pgsql-committers@lists.postgresql.org
Date: 2018-04-07T23:26:07Z
Lists: pgsql-hackers
On 8 April 2018 at 10:59, David Rowley <david.rowley@2ndquadrant.com> wrote: > Sometimes I see: > > relname | relallvisible > ---------+--------------- > tprt_1 | 0 > tprt_2 | 1 > > Other times I see: > > relname | relallvisible > ---------+--------------- > tprt_1 | 0 > tprt_2 | 0 The minimum set of commands I can find to recreate this are: drop table if exists tprt; create table tprt (col1 int) partition by range (col1); create table tprt_1 partition of tprt for values from (1) to (5001); create index tprt1_idx on tprt_1 (col1); insert into tprt values (10), (20), (501), (502), (505), (1001), (4500); vacuum tprt; select relname,relallvisible from pg_Class where relname like 'tprt%' and relkind = 'r'; I get relallvisible = 0 once in maybe 20 or so attempts. I didn't manage to get the same without a partitioned table. -- David Rowley http://www.2ndQuadrant.com/ PostgreSQL Development, 24x7 Support, Training & Services
Commits
-
Update Append's idea of first_partial_plan
- b7e2cbc5b49f 11.0 landed
-
Fix IndexOnlyScan counter for heap fetches in parallel mode
- 15a8f8caad14 11.0 landed
-
Fix incorrect logic for choosing the next Parallel Append subplan
- 468abb8f7a69 11.0 landed
-
Minor comment updates
- d7a95f06a1a1 11.0 landed
-
Attempt to stabilize partition_prune test output.
- b47a86f5008f 11.0 landed
-
Support partition pruning at execution time
- 499be013de65 11.0 cited