BUG #5935: Log lotation not working for default log format - Mailing list pgsql-bugs

From Brad Nicholson
Subject BUG #5935: Log lotation not working for default log format
Date
Msg-id 201103171936.p2HJaRN4011070@wwwmaster.postgresql.org
Whole thread Raw
Responses Re: BUG #5935: Log lotation not working for default log format
List pgsql-bugs
The following bug has been logged online:

Bug reference:      5935
Logged by:          Brad Nicholson
Email address:      bnicholson@hp.com
PostgreSQL version: 9.0.3
Operating system:   CentOS Release 5.5
Description:        Log lotation not working for default log format
Details:

PostgreSQL 9.0.3 on x86_64-unknown-linux-gnu, compiled by GCC gcc (GCC)
4.1.2 20080704 (Red Hat 4.1.2-48), 64-bit
CentOS release 5.5 (Final)

(using the standard PG package)

The logfile will not rotate if the log_filename is set to postgresql-%a.log,
which is the default setting after an initdb on my platform.


I have tested this by setting log_rotation_size and exceeding that threshold
and manually trying to rotate the logs with SELECT pg_rotate_logfile().
Both fail to rotate the log file.


Manual Rotate:

[postgres@pg1 pgdata]$ ls -al logs/
total 24
drwxr-xr-x 2 postgres postgres 4096 Mar 17 13:11 .
drwxr-xr-x 4 postgres postgres 4096 Mar 17 13:08 ..
-rw------- 1 postgres postgres  150 Mar 17 13:11 postgresql-Thu.log
[postgres@pg1 pgdata]$ psql -p 6432  -c "show log_filename;" postgres
   log_filename
-------------------
 postgresql-%a.log
(1 row)

[postgres@pg1 pgdata]$ psql -p 6432 -c "SELECT pg_rotate_logfile()"
postgres
 pg_rotate_logfile
-------------------
 t
(1 row)

[postgres@pg1 pgdata]$ ls -al logs/
total 24
drwxr-xr-x 2 postgres postgres 4096 Mar 17 13:11 .
drwxr-xr-x 4 postgres postgres 4096 Mar 17 13:08 ..
-rw------- 1 postgres postgres  150 Mar 17 13:11 postgresql-Thu.log



Size based automatic rotation:

[postgres@pg1 pgdata]$ psql -p 6432  -c "show log_rotation_size;" postgres
 log_rotation_size
-------------------
 1MB
(1 row)

<generate some pgbench traffic with full statement logging>

[postgres@pg1 pgdata]$ ls -thl logs/
total 3.2M
-rw------- 1 postgres postgres 3.2M Mar 17 13:24 postgresql-Thu.log



If I switch the log_filename to something more specific like
postgresql-%Y-%m-%d_%H_%M_%S.log - the logfile rotates.

pgsql-bugs by date:

Previous
From: Alvaro Herrera
Date:
Subject: Re: BUG #5842: Memory leak in PL/Python when taking slices of results
Next
From: Korry Douglas
Date:
Subject: Re: BUG #5935: Log lotation not working for default log format