Re: Partition-wise join for join between (declaratively) partitioned tables
Ashutosh Bapat <ashutosh.bapat@enterprisedb.com>
Attachments
- pg_dp_join_patches_v22.tar.gz (application/x-gzip)
On Mon, Jul 10, 2017 at 3:57 PM, Ashutosh Bapat <ashutosh.bapat@enterprisedb.com> wrote: > On Tue, Jul 4, 2017 at 10:02 AM, Ashutosh Bapat > <ashutosh.bapat@enterprisedb.com> wrote: >> On Fri, Jun 30, 2017 at 2:53 PM, Rafia Sabih >> <rafia.sabih@enterprisedb.com> wrote: >>> >>> >>> On Mon, May 22, 2017 at 12:02 PM, Ashutosh Bapat >>> <ashutosh.bapat@enterprisedb.com> wrote: >>>> >>>> >>>> Here's set of patches rebased on latest head. >>> >>> >>> In an attempt to test this set of patches, I found that not all of the >>> patches could be applied on latest head-- commit >>> 08aed6604de2e6a9f4d499818d7c641cbf5eb9f7 >>> Might be in need of rebasing. >> >> Thanks Rafia for your interest. I have started rebasing the patches on >> the latest head. I am expecting it to take some time. Will update the >> thread with the patches once I am done rebasing them. >> > > Here are patches rebased. > > As mentioned in my previous mail [1], the last two patches are not > complete but are included, so that the reviewer can see the changes we > will have to make when we go towards more general partition-wise join. > Please use patches upto 0015, which implement 1:1 partition mapping > for benchmarking and testing. > > [1] https://www.postgresql.org/message-id/CAFjFpRdF8GpmSjjn0fm85cMW2iz+r3MQJQ_HC0eDATzWSv5buw@mail.gmail.com > Here's revised patch set with only 0004 revised. That patch deals with creating multi-level inheritance hierarchy from multi-level partition hierarchy. The original logic of recursively calling inheritance_planner()'s guts over the inheritance hierarchy required that for every such recursion we flatten many lists created by that code. Recursion also meant that root->append_rel_list is traversed as many times as the number of partitioned partitions in the hierarchy. Instead the revised version keep the iterative shape of inheritance_planner() intact, thus naturally creating flat lists, iterates over root->append_rel_list only once and is still easy to read and maintain. -- Best Wishes, Ashutosh Bapat EnterpriseDB Corporation The Postgres Database Company
Commits
-
Basic partition-wise join functionality.
- f49842d1ee31 11.0 landed
-
Assorted preparatory refactoring for partition-wise join.
- e139f1953f29 11.0 landed
-
Teach adjust_appendrel_attrs(_multilevel) to do multiple translations.
- 480f1f4329f1 11.0 landed
-
Stamp 10beta2.
- 42171e2cd23c 10.0 cited
-
Eat XIDs more efficiently in recovery TAP test.
- 08aed6604de2 10.0 cited
-
Abstract logic to allow for multiple kinds of child rels.
- 7a39b5e4d112 10.0 landed
-
Implement SortSupport for macaddr data type
- f90d23d0c518 10.0 cited
-
Attempt to stabilize grouping sets regression test plans.
- de4da168d57d 10.0 cited
-
Teach xlogreader to follow timeline switches
- 1148e22a82ed 10.0 cited
-
Don't scan partitioned tables.
- d3cc37f1d801 10.0 cited
-
Fix grammar.
- b4ff8609dbad 10.0 cited
-
postgres_fdw: Push down FULL JOINs with restriction clauses.
- b30fb56b07a8 10.0 cited
-
Some preliminary refactoring towards partitionwise join.
- c44c47a773bd 10.0 landed
-
contrib/amcheck needs RecentGlobalXmin to be PGDLLIMPORT'ified.
- 56018bf26eec 10.0 cited
-
Print test parameters like "foo: 123", and results like "foo = 123".
- 2a7f4f76434d 10.0 cited