Currently we need to read pg_control to know the location(LSN) of the
checkpoint record. This means if pg_control is lost or corrupted, we
have to give up the database recovery. I think we could start from the
first WAL segment and read through entire WAL logs to find out the
latest valid checkpoint record. This may take considerable amount of
time, but still better than giving up recovery IMO. Any reason we
cannot do this?
--
Tatsuo Ishii