Re: Truncate logs by max_log_size - Mailing list pgsql-hackers

From Jim Jones
Subject Re: Truncate logs by max_log_size
Date
Msg-id 748a7ec0-9126-4f27-a2a7-e3e449d6fdd7@uni-muenster.de
Whole thread Raw
In response to Re: Truncate logs by max_log_size  (Kirill Reshke <reshkekirill@gmail.com>)
List pgsql-hackers

On 25.11.24 17:52, Kirill Reshke wrote:
> Hello! Please deliver the most recent patch version and fix the issues
> Jim identified [0] as the current commitfest draws to a close.
> Do not forget to include both parts of this patch (This was actually
> developed off-list, and we are now using this on our cloud PostgreSQL
> distribution on versions 12–17).
>
> [0] https://www.postgresql.org/message-id/35096a36-04d4-480b-a7cd-a2d8151fb737%40uni-muenster.de

In addition to these points, this feature seems to fail with queries
containing special characters (more than one byte):

With this "max_log_size"..

postgres=# SHOW max_log_size;
 max_log_size
--------------
 20
(1 row)

... and this query ..

postgres=# SELECT "ÄÜÖ" FROM t;
ERROR:  relation "t" does not exist
LINE 1: SELECT "ÄÜÖ" FROM t;

.. this is the [truncated] log entry we get ..

2024-11-28 14:58:57.912 CET [2258876] ERROR:  relation "t" does not
exist at character 19
2024-11-28 14:58:57.912 CET [2258876] STATEMENT:  SELECT "ÄÜÖ" FROM

... although the query originally had exactly 20 characters:

postgres=# SELECT length('SELECT "ÄÜÖ" FROM t;');
 length
--------
     20
(1 row)


postgres=# SELECT length('ÄÜÖ'::bytea), length('AUO'::bytea);
 length | length
--------+--------
      6 |      3
(1 row)

If it is supposed to be like this, it should be clearly stated so in the
docs.

-- 
Jim




pgsql-hackers by date:

Previous
From: vignesh C
Date:
Subject: Re: Fix comment in reorderbuffer.h
Next
From: Daniel Gustafsson
Date:
Subject: Re: Fix comment in reorderbuffer.h