• H
    Add support for piping COPY to/from an external program. · 3d009e45
    Heikki Linnakangas 提交于
    This includes backend "COPY TO/FROM PROGRAM '...'" syntax, and corresponding
    psql \copy syntax. Like with reading/writing files, the backend version is
    superuser-only, and in the psql version, the program is run in the client.
    
    In the passing, the psql \copy STDIN/STDOUT syntax is subtly changed: if you
    the stdin/stdout is quoted, it's now interpreted as a filename. For example,
    "\copy foo from 'stdin'" now reads from a file called 'stdin', not from
    standard input. Before this, there was no way to specify a filename called
    stdin, stdout, pstdin or pstdout.
    
    This creates a new function in pgport, wait_result_to_str(), which can
    be used to convert the exit status of a process, as returned by wait(3),
    to a human-readable string.
    
    Etsuro Fujita, reviewed by Amit Kapila.
    3d009e45
fd.c 58.2 KB