Thread: psql --single-step mode doesn't like empty sets

psql --single-step mode doesn't like empty sets

From
"Dan Langille"
Date:
As part of a 7.1.2->7.2 data migration process, I resorted to single stop
mode to see if I could determine the cause of an error (please see my
following post to this list).

$ less users.txt

COPY "users"  FROM stdin;
\.
--
-- TOC Entry ID 71 (OID 604886)
--
-- Name: "element_name" Type: INDEX Owner: dan
--

$ psql --single-step fp2migration < users.txt
***(Single step mode: Verify
query)*********************************************
COPY "users"  FROM stdin;
***(press return to proceed or enter x and return to
cancel)********************
ERROR:  copy: line 1, CopyFrom: Fail to add null value in not null
attribute name
lost synchronization with server, resetting connection

Without single-stop, it works fine:
$ psql fp2migration < users.txt
$
--
Dan Langille
The FreeBSD Diary - http://freebsddiary.org/ - practical examples


Re: psql --single-step mode doesn't like empty sets

From
Peter Eisentraut
Date:
Dan Langille writes:

> As part of a 7.1.2->7.2 data migration process, I resorted to single stop
> mode to see if I could determine the cause of an error (please see my
> following post to this list).
>
> $ less users.txt
>
> COPY "users"  FROM stdin;
> \.
> --
> -- TOC Entry ID 71 (OID 604886)
> --
> -- Name: "element_name" Type: INDEX Owner: dan
> --
>
> $ psql --single-step fp2migration < users.txt
> ***(Single step mode: Verify
> query)*********************************************
> COPY "users"  FROM stdin;
> ***(press return to proceed or enter x and return to
> cancel)********************
> ERROR:  copy: line 1, CopyFrom: Fail to add null value in not null
> attribute name
> lost synchronization with server, resetting connection

If you're reading the file from stdin, then the confirmation for the
single-step mode will also be read from the file.  What you want to do
instead is

psql --single-step -f users.txt fp2migration

--
Peter Eisentraut   peter_e@gmx.net