Re: ModifyTable overheads in generic plans

From: Amit Langote <amitlangote09(at)gmail(dot)com>
To: Heikki Linnakangas <hlinnaka(at)iki(dot)fi>
Cc: Robert Haas <robertmhaas(at)gmail(dot)com>, PostgreSQL-development <pgsql-hackers(at)postgresql(dot)org>, David Rowley <dgrowleyml(at)gmail(dot)com>, "Tsunakawa, Takayuki" <tsunakawa(dot)takay(at)jp(dot)fujitsu(dot)com>
Subject: Re: ModifyTable overheads in generic plans
Date: 2020-12-22 08:16:46
Message-ID: CA+HiwqGeCqtXdM48zrmRyPaOEFDB8sbX=6KFFKF6ZpQ-hupmng@mail.gmail.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

On Mon, Dec 7, 2020 at 3:53 PM Amit Langote <amitlangote09(at)gmail(dot)com> wrote:
>
> On Thu, Nov 12, 2020 at 5:04 PM Amit Langote <amitlangote09(at)gmail(dot)com> wrote:
> > Attached new 0002 which does these adjustments. I went with
> > ri_RootTargetDesc to go along with ri_RelationDesc.
> >
> > Also, I have updated the original 0002 (now 0003) to make
> > GetChildToRootMap() use ri_RootTargetDesc instead of
> > ModifyTableState.rootResultRelInfo.ri_RelationDesc, so that even
> > AfterTriggerSaveEvent() can now use that function. This allows us to
> > avoid having to initialize ri_ChildToRootMap anywhere but inside
> > GetChildRootMap(), with that long comment defending doing so. :-)
>
> These needed to be rebased due to recent copy.c upheavals. Attached.

Needed to be rebased again.

--
Amit Langote
EDB: http://www.enterprisedb.com

Attachment Content-Type Size
v12-0001-Set-ForeignScanState.resultRelInfo-lazily.patch application/octet-stream 4.1 KB
v12-0002-Rethink-ResultRelInfo.ri_PartitionRoot.patch application/octet-stream 26.8 KB
v12-0003-Initialize-result-relation-information-lazily.patch application/octet-stream 51.9 KB

In response to

Responses

Browse pgsql-hackers by date

  From Date Subject
Next Message Justin Pryzby 2020-12-22 08:32:05 Re: Allow CLUSTER, VACUUM FULL and REINDEX to change tablespace on the fly
Previous Message Jakub Wartak 2020-12-22 08:14:22 RE: Improve the performance to create END_OF_RECOVERY checkpoint