end of COPY

Started by Marc Millasabout 1 year ago6 messagesgeneral
Jump to latest
#1Marc Millas
marc.millas@mokadb.com

Hi,
on a Postgres 16 DB running on a redhat 8.5 x86 machineI want to input some
data using copy from stdin
so.. more that 700 000 lines goes well.
Then the flow contains a single line: \.
to my understanding this means end of the copy

but, Postgres generates an error :
invalid input syntax for type numeric "\."
then the 2 lines stating the copy command that was executed.

what am I missing ?

thanks

Marc MILLAS
Senior Architect
+33607850334
www.mokadb.com

#2Ron
ronljohnsonjr@gmail.com
In reply to: Marc Millas (#1)
Re: end of COPY

On Wed, Mar 5, 2025 at 10:22 AM Marc Millas <marc.millas@mokadb.com> wrote:

Hi,
on a Postgres 16 DB running on a redhat 8.5 x86 machineI want to input
some data using copy from stdin
so.. more that 700 000 lines goes well.
Then the flow contains a single line: \.
to my understanding this means end of the copy

I just tested this on PG 16.8. No backslash.
$ psql TAP -Xc "copy public.job_notification TO STDOUT;"

https://www.postgresql.org/docs/16/sql-copy.html
"End of data *can be* represented by a single line containing just
backslash-period (\.)."
"the end-of-data marker (\.) or the null string (\N by default)."

but, Postgres generates an error :
invalid input syntax for type numeric "\."
then the 2 lines stating the copy command that was executed.

what am I missing ?

COPY is expecting something after the backslash.

--
Death to <Redacted>, and butter sauce.
Don't boil me, I'm still alive.
<Redacted> lobster!

#3Greg Sabino Mullane
greg@turnstep.com
In reply to: Marc Millas (#1)
Re: end of COPY

On Wed, Mar 5, 2025 at 10:22 AM Marc Millas <marc.millas@mokadb.com> wrote:

Then the flow contains a single line: \. to my understanding this means
end of the copy

but, Postgres generates an error : invalid input syntax for type numeric
"\."

This can happen when you send TWO backslashes and a dot, rather than a
single backslash and a dot.

Cheers,
Greg

--
Crunchy Data - https://www.crunchydata.com
Enterprise Postgres Software Products & Tech Support

#4Adrian Klaver
adrian.klaver@aklaver.com
In reply to: Marc Millas (#1)
Re: end of COPY

On 3/5/25 07:22, Marc Millas wrote:

Hi,
on a Postgres 16 DB running on a redhat 8.5 x86 machineI want to input
some data using copy from stdin
so.. more that 700 000 lines goes well.
Then the flow contains a single line: \.
to my understanding this means end of the copy

Provide the lines at the end of the data.

but, Postgres generates an error :
invalid input syntax for type numeric "\."
then the 2 lines stating the copy command that was executed.

Provide the complete error message.

what am I missing ?

thanks

Marc MILLAS
Senior Architect
+33607850334
www.mokadb.com <http://www.mokadb.com&gt;

--
Adrian Klaver
adrian.klaver@aklaver.com

#5Ron
ronljohnsonjr@gmail.com
In reply to: Greg Sabino Mullane (#3)
Re: end of COPY

On Wed, Mar 5, 2025 at 10:53 AM Greg Sabino Mullane <htamfids@gmail.com>
wrote:

On Wed, Mar 5, 2025 at 10:22 AM Marc Millas <marc.millas@mokadb.com>
wrote:

Then the flow contains a single line: \. to my understanding this means
end of the copy

but, Postgres generates an error : invalid input syntax for type numeric
"\."

This can happen when you send TWO backslashes and a dot, rather than a
single backslash and a dot.

I hate proportional fonts. 😠

--
Death to <Redacted>, and butter sauce.
Don't boil me, I'm still alive.
<Redacted> lobster!

#6Marc Millas
marc.millas@mokadb.com
In reply to: Greg Sabino Mullane (#3)
Re: end of COPY

Greg... 👍

works fine now.

thanks !

Marc MILLAS
Senior Architect
+33607850334
www.mokadb.com

On Wed, Mar 5, 2025 at 4:53 PM Greg Sabino Mullane <htamfids@gmail.com>
wrote:

Show quoted text

On Wed, Mar 5, 2025 at 10:22 AM Marc Millas <marc.millas@mokadb.com>
wrote:

Then the flow contains a single line: \. to my understanding this means
end of the copy

but, Postgres generates an error : invalid input syntax for type numeric
"\."

This can happen when you send TWO backslashes and a dot, rather than a
single backslash and a dot.

Cheers,
Greg

--
Crunchy Data - https://www.crunchydata.com
Enterprise Postgres Software Products & Tech Support