mirror of
https://github.com/postgres/postgres.git
synced 2025-04-25 21:42:33 +03:00
Add tests for more row patterns with COPY FROM .. (ON_ERROR ignore)
While digging into the code of this feature, I got confused by the fact that a line is skipped when a value cannot be converted to its expected attribute even if the line has fewer attributes than the target relation. The tests had a check for the case of an empty line, this commit a couple more patterns where a line is incomplete, but skipped because of a conversion error. Reviewed-by: Bharath Rupireddy Discussion: https://postgr.es/m/Ze_7kZqexdt0BiyC@paquier.xyz
This commit is contained in:
parent
0b84f5c419
commit
a189ed49d6
@ -730,13 +730,14 @@ COPY check_ign_err FROM STDIN WITH (on_error stop);
|
||||
ERROR: invalid input syntax for type integer: "a"
|
||||
CONTEXT: COPY check_ign_err, line 2, column n: "a"
|
||||
COPY check_ign_err FROM STDIN WITH (on_error ignore);
|
||||
NOTICE: 4 rows were skipped due to data type incompatibility
|
||||
NOTICE: 6 rows were skipped due to data type incompatibility
|
||||
SELECT * FROM check_ign_err;
|
||||
n | m | k
|
||||
---+-----+---
|
||||
1 | {1} | 1
|
||||
5 | {5} | 5
|
||||
(2 rows)
|
||||
8 | {8} | 8
|
||||
(3 rows)
|
||||
|
||||
-- test datatype error that can't be handled as soft: should fail
|
||||
CREATE TABLE hard_err(foo widget);
|
||||
|
@ -515,6 +515,9 @@ a {2} 2
|
||||
4 {a, 4} 4
|
||||
|
||||
5 {5} 5
|
||||
6 a
|
||||
7 {7} a
|
||||
8 {8} 8
|
||||
\.
|
||||
SELECT * FROM check_ign_err;
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user