Thread: "trailing junk after numeric literal at or near ""512"""

"trailing junk after numeric literal at or near ""512"""

From
Olleg Samoylov
Date:
Hi all.

I have PostgreSQL 16.6. The log files are attached as partitions by 
file_fdw to the SQL table. Common practice. But after the error message
"trailing junk after numeric literal at or near ""512<d0>""" (vim -b view)
was wrote, the reading all log was stopped with error from file_fdw:

ERROR:  invalid byte sequence for encoding "UTF8": 0xd0 0x22

The reason is the error message in the log file (which must be utf-8) 
consist of:
\x 22 35 31 32 d0 22
    "  5  1  2     "
and d0 is not a utf-8 character so it block reading whole log file by 
file_fdw. I think the correct behavior must be the error log function 
must mask the wrong bytes by the ESC sequences, so PostgreSQL will be 
able read such log file with help of file_fdw.
-- 
Olleg




Re: "trailing junk after numeric literal at or near ""512"""

From
Tom Lane
Date:
Olleg Samoylov <splarv@ya.ru> writes:
> I have PostgreSQL 16.6. The log files are attached as partitions by 
> file_fdw to the SQL table. Common practice. But after the error message
> "trailing junk after numeric literal at or near ""512<d0>""" (vim -b view)
> was wrote, the reading all log was stopped with error from file_fdw:

> ERROR:  invalid byte sequence for encoding "UTF8": 0xd0 0x22

> The reason is the error message in the log file (which must be utf-8) 
> consist of:
> \x 22 35 31 32 d0 22
>     "  5  1  2     "
> and d0 is not a utf-8 character so it block reading whole log file by 
> file_fdw.

You certain that server is 16.6?  Because we fixed that in 16.5:

https://git.postgresql.org/gitweb/?p=postgresql.git&a=commitdiff&h=4fd4d7653

            regards, tom lane