Обсуждение: Cannot start the PostgreSQL v7.1.3 database

Поиск
Список
Период
Сортировка

Cannot start the PostgreSQL v7.1.3 database

От
"Wahl, Steven"
Дата:
We have installed the PostgreSQL 7.1.3 database on a HPUX 11.00 system and was running fine until now.  The database has stopped and when running the '/sbin/init.d/postgres start' command, it will only run for a few seconds before quitting.  We know this because we can grep on the 'postmaster' process but only exists for the first 10-15 seconds or so.
 
We have turned on debugging with the following results:
 
Appliedview pg_log invoking IpcMemorycreate(size=1245184)
FindExec: found "joptjpgsql-7.1.3jbinjpostmaster" using argv[O]
DEBUG: database system shutdown was interrupted at 2002-10-0110:59:26 EDT
DEBUG: checkpoint record at (2, 900015984)
DEBUG: Redo record at (2, 899933184); undo record at (0, 0); Shutdown FALSE DEBUG: NextTransactionld: 40178986; NextOid: 127439
DEBUG: database system was not properly shut down; automatic recovery in progress. ..
DEBUG: redo starts at (2, 899933184)
DEBUG: ReadRecord: record with zero len at (2, 923216960) DEBUG: redo done at (2, 923216920)
FATAL 2: XLogFlush: request is not satisfied
IDEBUG: proc_exit(2)
DEBUG: shmem_exit(2)
: DEBUG: exit(2)
joptjpgsql-7.1.3jbinjpostmaster: reaping dead processes...
joptjpgsql-7.1.3jbinjpostmaster: Startup proc 8056 exited with status 512 - abort $
 
Is the database corrupt?  Can it be saved?
 
Thanks for assistance,
Steve Wahl
Applications Engineer
<AppliedView/OpenView/HPUX>
stevenwa@aiinet.com
5800 Innovation Drive
Dublin, OH 43016
(800)246-7852 <Tech. Support Hot Line>
(614)798-8133 <Fax>
 

Re: Cannot start the PostgreSQL v7.1.3 database

От
Tom Lane
Дата:
"Wahl, Steven" <stevenwa@aiinet.com> writes:
> DEBUG: redo starts at (2, 899933184)
> DEBUG: ReadRecord: record with zero len at (2, 923216960) DEBUG: redo done
> at (2, 923216920)
> FATAL 2: XLogFlush: request is not satisfied

> Is the database corrupt?  Can it be saved?

Yes, and probably.  I'd suggest running contrib/pg_resetxlog, then doing
a prompt pg_dumpall, after which you can initdb and reload the dump.
You should check your data for corruption, in the form of
partially-applied recent transactions.  There may be actual garbage
in there too --- the error suggests that the LSN pointer in some data
page is garbage, which may mean that more of that page has been
clobbered as well.

As long as you have to dump and reload anyway, this would be a real
good time to update to PG 7.2.3.

            regards, tom lane