On 11/14/2012 02:05 PM, Peter Eisentraut wrote:
> On 11/14/12 11:50 AM, Andrew Dunstan wrote:
>>> COPY table FROM 'some command line |';
>>> COPY table TO '| some command line';
>>>
>>
>> I'd like to be able to filter STDIN if possible - with this syntax how
>> is COPY going to know to hook up STDIN to the program?
> Why don't you filter the data before it gets to stdin? Some program is
> feeding the data to "stdin" on the client side. Why doesn't that do the
> filtering? I don't see a large advantage in having the data be sent
> unfiltered to the server and having the server do the filtering.
Centralization of processing would be one obvious reason. I don't really
see why the same reasoning doesn't apply on the backend. You could just
preprocess the input before calling COPY (via a plperlu function for
example). If we're going to have filtering functionality then it should
be as general as possible, ISTM. But I seem to be alone in this, so I
won't push it.
cheers
andrew