BUG #13685: Archiving while idle every archive_timeout with wal_level hot_standby - Mailing list pgsql-bugs

From l@lrowe.co.uk
Subject BUG #13685: Archiving while idle every archive_timeout with wal_level hot_standby
Date
Msg-id 20151016203031.3019.72930@wrigleys.postgresql.org
Whole thread Raw
Responses Re: BUG #13685: Archiving while idle every archive_timeout with wal_level hot_standby  (Michael Paquier <michael.paquier@gmail.com>)
List pgsql-bugs
The following bug has been logged on the website:

Bug reference:      13685
Logged by:          Laurence Rwoe
Email address:      l@lrowe.co.uk
PostgreSQL version: 9.4.5
Operating system:   Mac OS X 10.10
Description:

I'm seeing Postgres 9.4.5 archive while idle every archive_timeout when I
set ``wal_level hot_standby``:

$ initdb testpg
$ cat << 'EOF' >> testpg/postgresql.conf
> wal_level = hot_standby
> archive_mode = on
> archive_timeout = 10
> checkpoint_timeout = 1h
> archive_command = 'echo $(date) archive %p'
> log_checkpoints = on
> EOF
$ postgres -D testpg
LOG:  database system was shut down at 2015-10-13 11:58:45 PDT
LOG:  MultiXact member wraparound protections are now enabled
LOG:  autovacuum launcher started
LOG:  database system is ready to accept connections
Tue Oct 13 12:00:47 PDT 2015 archive pg_xlog/000000010000000000000001
Tue Oct 13 12:00:57 PDT 2015 archive pg_xlog/000000010000000000000002
LOG:  checkpoint starting: xlog
Tue Oct 13 12:01:07 PDT 2015 archive pg_xlog/000000010000000000000003
LOG:  checkpoint complete: wrote 0 buffers (0.0%); 0 transaction log file(s)
added, 0 removed, 0 recycled; write=0.000 s, sync=0.000 s, total=0.026 s;
sync files=0, longest=0.000 s, average=0.000 s
Tue Oct 13 12:01:17 PDT 2015 archive pg_xlog/000000010000000000000004
Tue Oct 13 12:01:27 PDT 2015 archive pg_xlog/000000010000000000000005
LOG:  checkpoint starting: xlog
Tue Oct 13 12:01:38 PDT 2015 archive pg_xlog/000000010000000000000006
LOG:  checkpoint complete: wrote 0 buffers (0.0%); 0 transaction log file(s)
added, 0 removed, 3 recycled; write=0.000 s, sync=0.000 s, total=0.027 s;
sync files=0, longest=0.000 s, average=0.000 s
Tue Oct 13 12:01:48 PDT 2015 archive pg_xlog/000000010000000000000007
Tue Oct 13 12:01:58 PDT 2015 archive pg_xlog/000000010000000000000008
LOG:  checkpoint starting: xlog
LOG:  checkpoint complete: wrote 0 buffers (0.0%); 0 transaction log file(s)
added, 0 removed, 3 recycled; write=0.000 s, sync=0.000 s, total=0.001 s;
sync files=0, longest=0.000 s, average=0.000 s


At ``wal_level archive`` I only see archiving every checkpoint_timeout (that
it archives every checkpoint_timeout is a known limitation, see
http://www.postgresql.org/message-id/1407389876762-5813999.post@n5.nabble.com):

$ initdb testpg
$ cat << 'EOF' >> testpg/postgresql.conf
> wal_level = archive
> archive_mode = on
> archive_timeout = 10
> checkpoint_timeout = 60
> archive_command = 'echo $(date) archive %p'
> log_checkpoints = on
> EOF
# lrowe@Laurences-iMac ~/scratch
$ postgres -D testpg
LOG:  database system was shut down at 2015-10-13 12:25:38 PDT
LOG:  MultiXact member wraparound protections are now enabled
LOG:  autovacuum launcher started
LOG:  database system is ready to accept connections
Tue Oct 13 12:25:49 PDT 2015 archive pg_xlog/000000010000000000000001
LOG:  checkpoint starting: time
LOG:  checkpoint complete: wrote 0 buffers (0.0%); 0 transaction log file(s)
added, 0 removed, 0 recycled; write=0.000 s, sync=0.000 s, total=0.029 s;
sync files=0, longest=0.000 s, average=0.000 s
Tue Oct 13 12:26:39 PDT 2015 archive pg_xlog/000000010000000000000002
LOG:  checkpoint starting: time
LOG:  checkpoint complete: wrote 0 buffers (0.0%); 0 transaction log file(s)
added, 0 removed, 1 recycled; write=0.000 s, sync=0.000 s, total=0.030 s;
sync files=0, longest=0.000 s, average=0.000 s
Tue Oct 13 12:27:39 PDT 2015 archive pg_xlog/000000010000000000000003

I think this additional archiving at wal_level hot_standby is a bug.

pgsql-bugs by date:

Previous
From: John McKown
Date:
Subject: Re: BUG #13676: C typedef code generated by ecpg with wrong syntax
Next
From: Tom Lane
Date:
Subject: Re: BUG #13684: pg_restore does not restore indexes when --jobs=X passed