Re: exposing COPY API - Mailing list pgsql-hackers

From Andrew Dunstan
Subject Re: exposing COPY API
Date
Msg-id 4D4BB093.2030009@dunslane.net
Whole thread Raw
In response to Re: exposing COPY API  (Itagaki Takahiro <itagaki.takahiro@gmail.com>)
Responses Re: exposing COPY API  (Itagaki Takahiro <itagaki.takahiro@gmail.com>)
List pgsql-hackers

On 02/03/2011 10:43 PM, Itagaki Takahiro wrote:
>
>> Also, a FDW allows the COPY to be used as a FROM target, giving it great
>> flexibility. AFAICT this does not.
> BTW, which do you want to improve, FDW or COPY FROM?  If FDW, the better
> API would be "raw" version of NextCopyFrom(). For example:
>    bool NextRawFields(CopyState cstate, char **fields, int *nfields)
> The caller FDW has responsibility to form tuples from the raw fields.
> If you need to customize how to form the tuples from various fields,
> the FDW also need to have such extensibility.
>
> If COPY FROM, we should implement all the features in copy.c
> rather than exported APIs.



The problem with COPY FROM is that nobody's come up with a good syntax 
for allowing it as a FROM target. Doing what I want via FDW neatly gets 
us around that problem. But I'm quite OK with doing the hard work inside 
the COPY code - that's what my working prototype does in fact.

One thing I'd like is to to have file_fdw do something we can't do 
another way. currently it doesn't, so it's nice but uninteresting.

cheers

andrew


pgsql-hackers by date:

Previous
From: Itagaki Takahiro
Date:
Subject: Re: Add ENCODING option to COPY
Next
From: Dimitri Fontaine
Date:
Subject: Re: ALTER EXTENSION UPGRADE, v3