textarray option for file FDW

From: Andrew Dunstan <andrew(at)dunslane(dot)net>
To: PostgreSQL-development <pgsql-hackers(at)postgresql(dot)org>
Subject: textarray option for file FDW
Date: 2011-01-15 17:29:24
Message-ID: 4D31D974.2060609@dunslane.net
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers


I've been waiting for the latest FDW patches as patiently as I can, and
I've been reviewing them this morning, in particular the file_fdw patch
and how it interacts with the newly exposed COPY API. Overall it seems
to be a whole lot cleaner, and the wholesale duplication of the copy
code is gone, so it's much nicer and cleaner. So now I'd like to add a
new option to it: "textarray". This option would require that the
foreign table have exactly one field, of type text[], and would compose
all the field strings read from the file for each record into the array
(however many there are). This would require a few changes to
contrib/file_fdw/file_fdw.c and a few changes to
src/backend/commands/copy.c, which I can probably have done in fairly
short order, Deo Volente. This will allow something like:

CREATE FOREIGN TABLE arr_text (
t text[]
) SERVER file_server
OPTIONS (format 'csv', filename '/path/to/ragged.csv', textarray
'true');
SELECT t[3]::int as a, t[1]::timestamptz as b, t[99] as not_there
FROM arr_text;

Thoughts?

cheers

andrew

Responses

Browse pgsql-hackers by date

  From Date Subject
Next Message Tom Lane 2011-01-15 17:44:29 Re: textarray option for file FDW
Previous Message Joel Jacobson 2011-01-15 17:19:57 Re: Bug in pg_describe_object, patch v2