Обсуждение: BeginCopyTo - remove switching to old memory context in between COPY TO command processing

Поиск
Список
Период
Сортировка

BeginCopyTo - remove switching to old memory context in between COPY TO command processing

От
Bharath Rupireddy
Дата:
Hi,

While reviewing patch at [1], it has been found that the memory
context switch to oldcontext from cstate->copycontext in between
BeginCopyTo is not correct because the intention of the copycontext is
to use it through the copy command processing. It looks like a thinko
from the commit c532d1 [2]. Attaching a small patch to remove this.

Thoughts?

[1] https://www.postgresql.org/message-id/539760.1642610324%40sss.pgh.pa.us
[2]
commit c532d15dddff14b01fe9ef1d465013cb8ef186df
Author: Heikki Linnakangas <heikki.linnakangas@iki.fi>
Date:   Mon Nov 23 10:50:50 2020 +0200

    Split copy.c into four files.

Regards,
Bharath Rupireddy.

Вложения

Re: BeginCopyTo - remove switching to old memory context in between COPY TO command processing

От
Japin Li
Дата:
On Fri, 28 Jan 2022 at 18:11, Bharath Rupireddy <bharath.rupireddyforpostgres@gmail.com> wrote:
> Hi,
>
> While reviewing patch at [1], it has been found that the memory
> context switch to oldcontext from cstate->copycontext in between
> BeginCopyTo is not correct because the intention of the copycontext is
> to use it through the copy command processing. It looks like a thinko
> from the commit c532d1 [2]. Attaching a small patch to remove this.
>
> Thoughts?
>

Thanks for the patch!  Tested and passed regression tests.  LGTM.

--
Regrads,
Japin Li.
ChengDu WenWu Information Technology Co.,Ltd.



Re: BeginCopyTo - remove switching to old memory context in between COPY TO command processing

От
Michael Paquier
Дата:
On Fri, Jan 28, 2022 at 03:41:11PM +0530, Bharath Rupireddy wrote:
> While reviewing patch at [1], it has been found that the memory
> context switch to oldcontext from cstate->copycontext in between
> BeginCopyTo is not correct because the intention of the copycontext is
> to use it through the copy command processing. It looks like a thinko
> from the commit c532d1 [2]. Attaching a small patch to remove this.
>
> Thoughts?

I think that you are right.  Before c532d15d, BeginCopy() was
internally doing one switch with copycontext and the current memory
context.  This commit has just moved the internals of BeginCopy()
into BeginCopyTo(), so this looks like a copy-paste error to me.  I'll
go fix it, thanks for the report!
-
Michael

Вложения