Thread: pgsql: Add contrib/file_fdw foreign-data wrapper for reading files via

pgsql: Add contrib/file_fdw foreign-data wrapper for reading files via

From
Tom Lane
Date:
Add contrib/file_fdw foreign-data wrapper for reading files via COPY.

This is both very useful in its own right, and an important test case
for the core FDW support.

This commit includes a small refactoring of copy.c to expose its option
checking code as a separately callable function.  The original patch
submission duplicated hundreds of lines of that code, which seemed pretty
unmaintainable.

Shigeru Hanada, reviewed by Itagaki Takahiro and Tom Lane

Branch
------
master

Details
-------
http://git.postgresql.org/pg/commitdiff/7c5d0ae7078456bfeedb2103c45b9a32285c2631

Modified Files
--------------
contrib/Makefile                        |    1 +
contrib/README                          |    4 +
contrib/file_fdw/.gitignore             |    2 +
contrib/file_fdw/Makefile               |   21 ++
contrib/file_fdw/data/agg.bad           |    4 +
contrib/file_fdw/data/agg.csv           |    4 +
contrib/file_fdw/data/agg.data          |    4 +
contrib/file_fdw/expected/.gitignore    |    1 +
contrib/file_fdw/file_fdw--1.0.sql      |   15 +
contrib/file_fdw/file_fdw.c             |  536 +++++++++++++++++++++++++++++++
contrib/file_fdw/file_fdw.control       |    5 +
contrib/file_fdw/input/file_fdw.source  |  131 ++++++++
contrib/file_fdw/output/file_fdw.source |  225 +++++++++++++
contrib/file_fdw/sql/.gitignore         |    1 +
doc/src/sgml/contrib.sgml               |    1 +
doc/src/sgml/file-fdw.sgml              |  127 ++++++++
doc/src/sgml/filelist.sgml              |    1 +
src/backend/commands/copy.c             |  138 +++++---
src/include/commands/copy.h             |    5 +-
19 files changed, 1171 insertions(+), 55 deletions(-)