PANIC while doing failover (streaming replication)

From: Mikko Partio <mpartio(at)gmail(dot)com>
To: pgsql-admin <pgsql-admin(at)postgresql(dot)org>
Subject: PANIC while doing failover (streaming replication)
Date: 2011-07-01 05:18:39
Message-ID: BANLkTi=3D0-3j6cD2-MJYDb0sxQmMb75aQ@mail.gmail.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-admin pgsql-hackers

Hello list

I have two a machine cluster with PostgreSQL 9.0.4 and streaming
replication. In a normal situation I did a failover -- touched the trigger
file in standby to promote it to production mode. I have done this
previously without any complications but now the to-be-production-database
had a PANIC and shut itself down. From the logs:

postgres[10751]: [2-1] 2011-06-30 17:25:24 EEST [10751]: [1-1] user=,db=
LOG: streaming replication successfully connected to primary
postgres[10736]: [10-1] 2011-07-01 07:50:29 EEST [10736]: [10-1] user=,db=
LOG: trigger file found: /postgresql/data/finish_replication.trigger
postgres[10751]: [3-1] 2011-07-01 07:50:29 EEST [10751]: [2-1] user=,db=
FATAL: terminating walreceiver process due to administrator command
postgres[10736]: [11-1] 2011-07-01 07:50:30 EEST [10736]: [11-1] user=,db=
LOG: redo done at AE/8B1855C8
postgres[10736]: [12-1] 2011-07-01 07:50:30 EEST [10736]: [12-1] user=,db=
LOG: last completed transaction was at log time 2011-07-01
07:50:14.67424+03
postgres[10736]: [13-1] 2011-07-01 07:50:30 EEST [10736]: [13-1] user=,db=
LOG: restored log file "00000006000000AE0000008B" from archive
postgres[10736]: [14-1] 2011-07-01 07:50:30 EEST [10736]: [14-1] user=,db=
LOG: selected new timeline ID: 7
postgres[10736]: [15-1] 2011-07-01 07:50:30 EEST [10736]: [15-1] user=,db=
LOG: restored log file "00000006.history" from archive
postgres[10736]: [16-1] 2011-07-01 07:50:30 EEST [10736]: [16-1] user=,db=
LOG: archive recovery complete
postgres[10736]: [17-1] 2011-07-01 07:50:30 EEST [10736]: [17-1] user=,db=
WARNING: page 68975 of relation base/3711580/4398155 was uninitialized
postgres[10736]: [18-1] 2011-07-01 07:50:30 EEST [10736]: [18-1] user=,db=
WARNING: page 782 of relation base/3711580/4395394 was uninitialized
postgres[10736]: [19-1] 2011-07-01 07:50:30 EEST [10736]: [19-1] user=,db=
WARNING: page 68948 of relation base/3711580/4398155 was uninitialized
postgres[10736]: [20-1] 2011-07-01 07:50:30 EEST [10736]: [20-1] user=,db=
WARNING: page 68986 of relation base/3711580/4398155 was uninitialized

[ there are maybe 50 lines of these WARNING messages for all together six
different relations, all indexes ]

postgres[10736]: [73-1] 2011-07-01 07:50:31 EEST [10736]: [73-1] user=,db=
PANIC: WAL contains references to invalid pages
postgres[10727]: [2-1] 2011-07-01 07:50:31 EEST [10727]: [2-1] user=,db=
LOG: startup process (PID 10736) was terminated by signal 6: Aborted
postgres[10727]: [3-1] 2011-07-01 07:50:31 EEST [10727]: [3-1] user=,db=
LOG: terminating any other active server processes

Then I started postgres as it was shut down:

postgres[12191]: [1-1] 2011-07-01 07:50:59 EEST [12191]: [1-1] user=,db=
LOG: database system was interrupted while in recovery at log time
2011-07-01 07:44:02 EEST
postgres[12191]: [1-2] 2011-07-01 07:50:59 EEST [12191]: [2-1] user=,db=
HINT: If this has occurred more than once some data might be corrupted and
you might need to choose an earlier recovery target.
postgres[12191]: [2-1] 2011-07-01 07:50:59 EEST [12191]: [3-1] user=,db=
LOG: database system was not properly shut down; automatic recovery in
progress
postgres[12191]: [3-1] 2011-07-01 07:50:59 EEST [12191]: [4-1] user=,db=
LOG: redo starts at AE/8B13E398
postgres[12191]: [4-1] 2011-07-01 07:50:59 EEST [12191]: [5-1] user=,db=
LOG: consistent recovery state reached at AE/8C000000
postgres[12191]: [5-1] 2011-07-01 07:50:59 EEST [12191]: [6-1] user=,db=
LOG: unexpected pageaddr AE/6E000000 in log file 174, segment 140, offset 0
postgres[12191]: [6-1] 2011-07-01 07:50:59 EEST [12191]: [7-1] user=,db=
LOG: redo done at AE/8B1855C8
postgres[12191]: [7-1] 2011-07-01 07:50:59 EEST [12191]: [8-1] user=,db=
LOG: last completed transaction was at log time 2011-07-01
07:50:14.67424+03
postgres[12194]: [1-1] 2011-07-01 07:50:59 EEST [12194]: [1-1] user=,db=
LOG: autovacuum launcher started
postgres[12189]: [1-1] 2011-07-01 07:50:59 EEST [12189]: [1-1] user=,db=
LOG: database system is ready to accept connections

Are these log messages something to worry about?

Regards

Mikko

Responses

Browse pgsql-admin by date

  From Date Subject
Next Message Fujii Masao 2011-07-01 05:54:48 Re: PANIC while doing failover (streaming replication)
Previous Message Greg Smith 2011-06-30 15:05:38 Re: Problem with Streaming Replication

Browse pgsql-hackers by date

  From Date Subject
Next Message Jeff Davis 2011-07-01 05:52:39 Re: Range Types, constructors, and the type system
Previous Message Jun Ishiduka 2011-07-01 05:04:27 Re: Online base backup from the hot-standby