Re: Minor code improvements to create_foreignscan_plan/ExecInitForeignScan

From: Etsuro Fujita <fujita(dot)etsuro(at)lab(dot)ntt(dot)co(dot)jp>
To: Robert Haas <robertmhaas(at)gmail(dot)com>
Cc: Alvaro Herrera <alvherre(at)2ndquadrant(dot)com>, Michael Paquier <michael(dot)paquier(at)gmail(dot)com>, PostgreSQL mailing lists <pgsql-hackers(at)postgresql(dot)org>
Subject: Re: Minor code improvements to create_foreignscan_plan/ExecInitForeignScan
Date: 2016-01-28 07:15:49
Message-ID: 56A9C025.3050603@lab.ntt.co.jp
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

On 2016/01/28 12:13, Robert Haas wrote:
> On Thu, Jan 21, 2016 at 5:55 AM, Etsuro Fujita
> <fujita(dot)etsuro(at)lab(dot)ntt(dot)co(dot)jp> wrote:
>> On 2016/01/21 7:04, Alvaro Herrera wrote:
>>> Etsuro Fujita wrote:
>>>>
>>>> On second thought, I noticed that detecting whether we see a system
>>>> column
>>>> that way needs more cycles in cases where the reltargetlist and the
>>>> restriction clauses don't contain any system columns. ISTM that such
>>>> cases
>>>> are rather common, so I'm inclined to keep that code as-is.

>>> Ah, I see now what you did there. I was thinking you'd have the
>>> foreach(restrictinfo) loop, then once the loop is complete scan the
>>> bitmapset; not scan the bitmap set scan inside the other loop.

>> Ah, I got to the point. I think that is a good idea. The additional cycles
>> for the worst case are bounded and negligible. Please find attached an
>> updated patch.

> I don't think this is a good idea. Most of the time, no system
> columns will be present, and we'll just be scanning the Bitmapset
> twice rather than once. Sure, that doesn't take many extra cycles,
> but if the point of all this is to micro-optimize this code, that
> particular change is going in the wrong direction.

I thought that is a good idea, considering the additional overhead is
little, because that would be useful for some use-cases. But I think we
need more discussions about that, so if there are no objections from
Alvaro (or anyone), I'll leave that part as-is.

Best regards,
Etsuro Fujita

In response to

Responses

Browse pgsql-hackers by date

  From Date Subject
Next Message Michael Paquier 2016-01-28 07:40:13 Re: Re: BUG #13685: Archiving while idle every archive_timeout with wal_level hot_standby
Previous Message Etsuro Fujita 2016-01-28 06:48:43 Re: Optimization for updating foreign tables in Postgres FDW