> In your patch for copy.sgml: > > ERROR_LIMIT '<replaceable class="parameter">limit_number</replaceable>' > > I think this should be: > > ERROR_LIMIT <replaceable class="parameter">limit_number</replaceable> > > (no single quote)
More comments: - I think the document should stat that if limit_number = 0, all errors are immediately raised (behaves same as current befavior without the patch). - "constraint violating rows will be returned back to the caller." This does explains the current implementation. I am not sure if it's intended or not though: cat /tmp/a 1 1 2 2 3 3 3 4 psql test $ psql test psql (13devel) Type "help" for help. test=# select * from t1; i | j ---+--- 1 | 1 2 | 2 3 | 3 (3 rows) test=# copy t1 from '/tmp/a' with (error_limit 1); ERROR: duplicate key value violates unique constraint "t1_pkey" DETAIL: Key (i)=(2) already exists. CONTEXT: COPY t1, line 2: "2 2" So if the number of errors raised exceeds error_limit, no constaraint violating rows (in this case i=1, j=1) are returned. Best regards, -- Tatsuo Ishii SRA OSS, Inc. Japan English: http://www.sraoss.co.jp/index_en.php Japanese:http://www.sraoss.co.jp