Re: fdw_private and (List*) handling in FDW API - Mailing list pgsql-hackers

From Tomas Vondra
Subject Re: fdw_private and (List*) handling in FDW API
Date
Msg-id ddb8a34ba631a2e1b2a11d93d740bd0c.squirrel@sq.gransy.com
Whole thread Raw
In response to Re: fdw_private and (List*) handling in FDW API  (Tom Lane <tgl@sss.pgh.pa.us>)
List pgsql-hackers
On 18 Říjen 2013, 17:52, Tom Lane wrote:
> "Tomas Vondra" <tv@fuzzy.cz> writes:
>> 2) Is there any particular reason why
>> PlanForeignModify/BeginForeignModify
>> require the fdw_private to be a List*, and not a generic pointer?
>
> That data has to be copiable by copyObject(), which a generic void* is
> not.  We could perhaps have made it Node* instead, but that would only
> work conveniently if there were infrastructure for plugins to create new
> first-class Node types; which there isn't.  A List is often the easiest
> way to transport a few random values from plan time to execution time,
> so it seemed best to declare fdw_private that way.

Oh, I see. Thanks for explanation.

Tomas




pgsql-hackers by date:

Previous
From: Alvaro Herrera
Date:
Subject: Re: Review: Patch to compute Max LSN of Data Pages
Next
From: Josh Berkus
Date:
Subject: Re: Auto-tuning work_mem and maintenance_work_mem