Re: [HACKERS] Partition-wise join for join between (declaratively)partitioned tables
От | Ashutosh Bapat |
---|---|
Тема | Re: [HACKERS] Partition-wise join for join between (declaratively)partitioned tables |
Дата | |
Msg-id | CAFjFpRfPeezggVRpwJLcCpL+CoyUMLZDhMTbSTq1KthmBN48WA@mail.gmail.com обсуждение исходный текст |
Ответ на | Re: [HACKERS] Partition-wise join for join between (declaratively)partitioned tables (Ashutosh Bapat <ashutosh.bapat@enterprisedb.com>) |
Ответы |
Re: [HACKERS] Partition-wise join for join between (declaratively)partitioned tables
|
Список | pgsql-hackers |
Here's set of patches rebased on the latest head. This rebase mainly changes patch 0001, which translates partition hierarchy into inheritance hierarchy creating AppendRelInfos and RelOptInfos for partitioned partitions. Because of that, it's not necessary to record the partitioned partitions in a PartitionedChildRelInfos::child_rels. The only RTI that goes in there is the RTI of child RTE which is same as the parent RTE except inh flag. I tried removing that with a series of changes but it seems that following code in ExecInitModifyTable() requires it. 1897 /* The root table RT index is at the head of the partitioned_rels list */ 1898 if (node->partitioned_rels) 1899 { 1900 Index root_rti; 1901 Oid root_oid; 1902 1903 root_rti = linitial_int(node->partitioned_rels); 1904 root_oid = getrelid(root_rti, estate->es_range_table); 1905 rel = heap_open(root_oid, NoLock); /* locked by InitPlan */ 1906 } 1907 else 1908 rel = mtstate->resultRelInfo->ri_RelationDesc; I don't know whether we could change this code not to use PartitionedChildRelInfos::child_rels. Removing PartitionedChildRelInfos machinary seems like a separate patch. The last two patches implement the advanced partition matching algorithm and are here in this set for ready reference. Please use [1] for discussing/reviewing those. [1] https://www.postgresql.org/message-id/CAFjFpRdjQvaUEV5DJX3TW6pU5eq54NCkadtxHX2JiJG_GvbrCA@mail.gmail.com -- Best Wishes, Ashutosh Bapat EnterpriseDB Corporation The Postgres Database Company -- Sent via pgsql-hackers mailing list (pgsql-hackers@postgresql.org) To make changes to your subscription: http://www.postgresql.org/mailpref/pgsql-hackers
Вложения
В списке pgsql-hackers по дате отправления: