RE: COPY FROM WHEN condition

myungkyu.lim <myungkyu.lim@samsung.com>

From: "myungkyu.lim" <myungkyu.lim@samsung.com>
To: "'Tomas Vondra'" <tomas.vondra@2ndquadrant.com>, "'Surafel Temesgen'" <surafel3000@gmail.com>, "'PostgreSQL Hackers'" <pgsql-hackers@postgresql.org>
Date: 2018-10-29T04:12:20Z
Lists: pgsql-hackers
Hello,

Basically, this patch worked very well in my tests.

> 3) For COPY TO, the WHEN clause is accepted but ignored, leading to confusing cases like this:

I found same issue.

    postgres=# copy t1 to '/home/lmk/t1.data' when c1 < 1;

In the 'COPY TO' statement, 'WHEN clause' does not do any extra work.
(include error or hint)

> 4) There are some minor code style issues in copy.c - the variable is misnamed as when_cluase, there are no spaces after 'if' etc. See the attached patch fixing this.

It is recommended to use 'pg tool' when you finish development.

    src/tools/pgindent/pgindent

    pgindent is used to fix the source code style to conform to pg standards.

Best regards,
Myungkyu, Lim



Commits

  1. Remove unused struct member, enforce multi_insert callback presence.

  2. Separate per-batch and per-tuple memory contexts in COPY

  3. Fix handling of volatile expressions in COPY FROM ... WHERE

  4. Allow COPY FROM to filter data using WHERE conditions

  5. Remove obsolete netbsd dynloader code