Re: FDW: possible resjunk columns in AddForeignUpdateTargets

From: Albe Laurenz <laurenz(dot)albe(at)wien(dot)gv(dot)at>
To: "Tom Lane *EXTERN*" <tgl(at)sss(dot)pgh(dot)pa(dot)us>
Cc: "pgsql-hackers(at)postgresql(dot)org" <pgsql-hackers(at)postgresql(dot)org>, "rdunklau(at)gmail(dot)com" <rdunklau(at)gmail(dot)com>
Subject: Re: FDW: possible resjunk columns in AddForeignUpdateTargets
Date: 2013-11-08 15:13:48
Message-ID: A737B7A37273E048B164557ADEF4A58B17C57B5B@ntex2010i.host.magwien.gv.at
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

Tom Lane wrote:
> Albe Laurenz <laurenz(dot)albe(at)wien(dot)gv(dot)at> writes:
>> What I would like to do is add a custom resjunk column
>> (e.g. a bytea) in AddForeignUpdateTargets that carries a row identifier
>> from the scan state to the modify state.
>> Would that be possible? Can I have anything else than a Var
>> in a resjunk column?
>
> [ thinks for awhile... ] Hm. In principle you can put any expression
> you want into the tlist during AddForeignUpdateTargets. However, if it's
> not a Var then the planner won't understand that it's something that needs
> to be supplied by the table scan, so things won't work right in any but
> the most trivial cases (maybe not even then :-().
>
> What I'd try is creating a Var that has the attno of ctid
> (ie, SelfItemPointerAttributeNumber) but the datatype you want, ie bytea.
> This won't match what the catalogs say your table's ctid is, but I think
> that nothing will care much about that.
>
> It's definitely an area that could use more work. IIRC we'd discussed
> providing some way for an FDW to specify the type of the ctid column
> for its tables, but we didn't do anything about it in 9.3.

Thanks a lot, I will try that.

Yours,
Laurenz Albe

In response to

Responses

Browse pgsql-hackers by date

  From Date Subject
Next Message Heikki Linnakangas 2013-11-08 15:19:31 Re: Gin page deletion bug
Previous Message Robert Haas 2013-11-08 15:10:39 Re: UTF8 national character data type support WIP patch and list of open issues.