Re: [HACKERS] Partition-wise join for join between (declaratively) partitioned tables
Ashutosh Bapat <ashutosh.bapat@enterprisedb.com>
On Fri, Dec 22, 2017 at 3:00 PM, Rajkumar Raghuwanshi <rajkumar.raghuwanshi@enterprisedb.com> wrote: > On Wed, Dec 20, 2017 at 5:21 PM, Ashutosh Bapat > <ashutosh.bapat@enterprisedb.com> wrote: >> >> Thanks. Here are some comments >> > Thanks Ashutosh for review and suggestions. > >> >> +-- test default partition behavior for range >> +ALTER TABLE prt1 DETACH PARTITION prt1_p3; >> +ALTER TABLE prt1 ATTACH PARTITION prt1_p3 DEFAULT; >> +ALTER TABLE prt2 DETACH PARTITION prt2_p3; >> +ALTER TABLE prt2 ATTACH PARTITION prt2_p3 DEFAULT; >> >> I think we need an ANALYZE here in case the statistics gets updated while >> DETACH and ATTACH is going on. Other testcases also need to be updated >> with >> ANALYZE, including the negative one. > > Done. > >> >> >> +-- partition-wise join can not be applied if the only one of joining >> table have >> >> Correction: ... if only one of the joining tables has ... > > Done. > >> >> Please add the patch to the next commitfest so that it's not >> forgotten. > > Done. > Added to CF: https://commitfest.postgresql.org/16/1426/ > >> >> I think we can get rid of the multi-level partition-wise >> testcase as well. Also, since we are re-attaching existing partition >> tables as default partitions, we don't need to check the output as >> well; just plan should be enough. > > Ok. Done. > > updated test patch attached. > The patch looks good to me. I don't think we can reduce it further. But we need some tests to test PWJ with default partitions. Marking this as ready for committer. -- Best Wishes, Ashutosh Bapat EnterpriseDB Corporation The Postgres Database Company
Commits
-
Add test for partitionwise join involving default partition.
- 4513d3a4be0b 12.0 landed
-
Rewrite the code that applies scan/join targets to paths.
- 11cf92f6e2e1 11.0 cited
-
Fix code related to partitioning schemes for dropped columns.
- cf7ab13bfb45 11.0 landed
-
Copy information from the relcache instead of pointing to it.
- 45866c75507f 11.0 landed
-
Basic partition-wise join functionality.
- f49842d1ee31 11.0 landed
-
Associate partitioning information with each RelOptInfo.
- 9140cf8269b0 11.0 landed
-
Expand partitioned table RTEs level by level, without flattening.
- 0a480502b092 11.0 landed
-
Set partitioned_rels appropriately when UNION ALL is used.
- 448aa36e8b96 10.0 landed
- 1555566d9ee1 11.0 landed
-
Remove dedicated B-tree root-split record types.
- 0c504a80cf2e 11.0 cited
-
Assorted preparatory refactoring for partition-wise join.
- e139f1953f29 11.0 cited
-
Teach adjust_appendrel_attrs(_multilevel) to do multiple translations.
- 480f1f4329f1 11.0 cited
-
Avoid unnecessary single-child Append nodes.
- d57929afc706 11.0 cited
-
Revisit handling of UNION ALL subqueries with non-Var output columns.
- dd4134ea56cb 9.2.0 cited