Hi,
we are running a PostgreSQL 8.3.3 on a Linux box (SuSE 10.3, 2.6.22
kernel) as a hot standby. After some maintenances work the WAL files
couldn't be shipped to that system (which had nothing to do with
postgres, as we found out later). The problem was not noticed for about
a week. When looking for a reason why the WAL weren't shipped, we found
the following error message:
2008-10-31 17:07:52 CET 9162LOG: received smart shutdown request
2008-10-31 17:07:52 CET 9178FATAL: could not restore file
"000000010000008600000018" from archive: return code 15
2008-10-31 17:07:52 CET 9162LOG: startup process (PID 9178) exited with
exit code 1
2008-10-31 17:07:52 CET 9162LOG: aborting startup due to startup
process failure
This message occurred about 3 1/2 days after the last log was shipped. I
searched the postgres docs and Google for the meaning of "return code
15" but couldn't find anything.
After copying the missing WAL from our master system and restarting
postgres, everything worked fine again, but I'm still curious what made
postgres stop waiting for WAL. It seems to me that there is some kind of
timeout that triggers if there are no new WAL for a couple of days, but
that would seem a bit strange. I'd expect postgres to wait forever if it
is not told to wake up from recovery mode manually. The manual's
"Recovery Settings" section didn't help either. I'm not sure if it is a
bug, at least it's strange.
Regards,
Marc