Re: BUG #7611: \copy (and COPY?) incorrectly parses nul character for windows-1252 - Mailing list pgsql-bugs

From Tom Lane
Subject Re: BUG #7611: \copy (and COPY?) incorrectly parses nul character for windows-1252
Date
Msg-id 1601.1350583024@sss.pgh.pa.us
Whole thread Raw
In response to BUG #7611: \copy (and COPY?) incorrectly parses nul character for windows-1252  (sams.james+postgres@gmail.com)
List pgsql-bugs
sams.james+postgres@gmail.com writes:
> I have a file with several nul characters in it. The file itself appears to
> be encoded as windows-1252, though I am not 100% certain of that. I do know
> that other software (e.g. Python) can decode the data as windows-1252
> without issue. Postgres's \copy, however, chokes on the nul byte:

> ERROR:  unterminated CSV quoted field
> CONTEXT:  COPY promo_nonactive_load_fake, line 239900

Postgres doesn't support nul characters in data, so the best you could
hope for here is an error message anyway.  It looks to me like the
immediate cause of this is that \copy reads the file with fgets()
which will effectively ignore the rest of the line after a nul byte.
But there are probably more issues downstream.

            regards, tom lane

pgsql-bugs by date:

Previous
From: sams.james+postgres@gmail.com
Date:
Subject: BUG #7611: \copy (and COPY?) incorrectly parses nul character for windows-1252
Next
From: Dave Vitek
Date:
Subject: Re: Fwd: race in pg_ctl start -w