Re: [HACKERS] Partitioned tables and relfilenode
От | Ashutosh Bapat |
---|---|
Тема | Re: [HACKERS] Partitioned tables and relfilenode |
Дата | |
Msg-id | CAFjFpRf5iS-N6MRhwxixZ1JMBMxVfgkNmsqpHHuR7te0Es0QEw@mail.gmail.com обсуждение исходный текст |
Ответ на | Re: [HACKERS] Partitioned tables and relfilenode (Amit Langote <Langote_Amit_f8@lab.ntt.co.jp>) |
Список | pgsql-hackers |
>> >> Will it help to retain the partition hierarchy as inheritance >> hierarchy and then collapse it while creating append paths. That will >> be needed by partition-wise join, will be helpful in partition pruning >> without using constraints and so on. So, may be could use that >> infrastructure to simplify the logic here. The patch is available as >> 0013 in [1]. >> >> [1] CAFjFpRfqotRR6cM3sooBHMHEVdkFfAZ6PyYg4GRZsoMuW08HjQ@mail.gmail.com > > IMHO, it would be better to keep those patches separate because the > problems being solved are different. By the way, one of the reasons that > patch (as I had written it) was skipped was because it didn't cover the > inheritance_planner() case [1]. Your patch 0013 at the link should be > updated (maybe I should report on the partitionwise joins thread as well) > in some way to handle the update/delete case, because this happens: > > create table p (a int, b char) partition by list (a); > create table p1 partition of p for values in (1) partition by list (b); > create table p1a partition of p1 for values in ('a'); > create table p2 partition of p for values in (2); > > explain (costs off) update p set a = a, b = 'b'; > QUERY PLAN > ----------------------------------- > Update on p > Update on p > Update on p1 p > Update on p2 > -> Seq Scan on p > -> Result > -> Append > -> Seq Scan on p1 > -> Seq Scan on p1a > -> Seq Scan on p2 > (10 rows) > > update p set a = a, b = 'b'; > server closed the connection unexpectedly > This probably means the server terminated abnormally > before or while processing the request. > The connection to the server was lost. Attempting reset: Failed. Thanks for pointing that out. I am able to reproduce the crash. I think, we will need to teach it to add the indirect children as well. Looks like we are missing a testcase for this scenario. I had run regression with that patch, and didn't catch any failures and crashes. -- Best Wishes, Ashutosh Bapat EnterpriseDB Corporation The Postgres Database Company
В списке pgsql-hackers по дате отправления: