postgresql/contrib/file_fdw
Heikki Linnakangas c532d15ddd Split copy.c into four files.
Copy.c has grown really large. Split it into more manageable parts:

- copy.c now contains only a few functions that are common to COPY FROM
  and COPY TO.

- copyto.c contains code for COPY TO.

- copyfrom.c contains code for initializing COPY FROM, and inserting the
  tuples to the correct table.

- copyfromparse.c contains code for reading from the client/file/program,
  and parsing the input text/CSV/binary format into tuples.

All of these parts are fairly complicated, and fairly independent of each
other. There is a patch being discussed to implement parallel COPY FROM,
which will add a lot of new code to the COPY FROM path, and another patch
which would allow INSERTs to use the same multi-insert machinery as COPY
FROM, both of which will require refactoring that code. With those two
patches, there's going to be a lot of code churn in copy.c anyway, so now
seems like a good time to do this refactoring.

The CopyStateData struct is also split. All the formatting options, like
FORMAT, QUOTE, ESCAPE, are put in a new CopyFormatOption struct, which
is used by both COPY FROM and TO. Other state data are kept in separate
CopyFromStateData and CopyToStateData structs.

Reviewed-by: Soumyadeep Chakraborty, Erik Rijkers, Vignesh C, Andres Freund
Discussion: https://www.postgresql.org/message-id/8e15b560-f387-7acc-ac90-763986617bfb%40iki.fi
2020-11-23 10:50:50 +02:00
..
data pg_prewarm: Add automatic prewarm feature. 2017-08-21 14:17:39 -04:00
expected Add contrib/file_fdw foreign-data wrapper for reading files via COPY. 2011-02-20 14:06:59 -05:00
input file_fdw: Fix for generated columns 2019-04-04 09:24:48 +02:00
output file_fdw: Fix for generated columns 2019-04-04 09:24:48 +02:00
sql Add contrib/file_fdw foreign-data wrapper for reading files via COPY. 2011-02-20 14:06:59 -05:00
.gitignore Support "make check" in contrib 2011-04-25 22:27:11 +03:00
Makefile Add file version information to most installed Windows binaries. 2014-07-14 14:07:52 -04:00
file_fdw--1.0.sql Throw a useful error message if an extension script file is fed to psql. 2011-10-12 15:45:03 -04:00
file_fdw.c Split copy.c into four files. 2020-11-23 10:50:50 +02:00
file_fdw.control Add contrib/file_fdw foreign-data wrapper for reading files via COPY. 2011-02-20 14:06:59 -05:00