pg.ddx.io  pgsql-admin@postgresql.org mailing list archive  
help / color / mirror / Atom feed
From: Ian Westmacott <ianw@intellivid.com>
To: pgsql-admin@postgresql.org
Subject: database corruption
Date: Fri, 15 Apr 2005 16:55:32 -0400
Message-ID: <1113598532.8214.175.camel@spectre.intellivid.com> (raw)

For several weeks now we have been experiencing fairly
severe database corruption upon clean reboot.  It is very
repeatable, and the corruption is of the following forms:

ERROR:  could not access status of transaction foo
DETAIL:  could not open file "bar": No such file or directory

ERROR:  invalid page header in block foo of relation "bar"

ERROR:  uninitialized page in block foo of relation "bar"


At first, we believed this was related to XFS, and have
been pursuing investigations along those lines.  However,
we have now experienced the exact same problem with JFS.

Here are some details:

- Postgres 7.4.2
- 2.6.6 kernel.org kernel
- dedicated database partition
- repeatable with XFS and JFS (have not seen on ext3)
- repeatable with and without Linux software RAID 0
- repeatable with IDE and SATA
- repeatable with and without fsync, and with fdatasync
- repeatable on multiple systems


I have two questions:

- any known reason why this might be occurring?  (we must
  have something wrong, for this high rate of severe
  error).

- if I don't care about losing data, and am not interested
  in trying to recover anything, how can I arrange for
  Postgres to proceed normally?  I know about
  zero_damaged_pages, but this doesn't help with missing
  transaction files and such.  Is there any way to get
  Postgres to chuck anything bad and proceed?

Thanks,

	--Ian





view thread (9+ messages)  latest in thread

Message-ID: <1113598532.8214.175.camel@spectre.intellivid.com>
Permalink:  ../1113598532.8214.175.camel@spectre.intellivid.com/
Also on:    postgresql.org/message-id/1113598532.8214.175.camel@spectre.intellivid.com

 · 

reply

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Reply to all the recipients using the --to and --cc options:
  reply via email

  To: pgsql-admin@postgresql.org
  Cc: ianw@intellivid.com
  Subject: Re: database corruption
  In-Reply-To: <1113598532.8214.175.camel@spectre.intellivid.com>

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

This inbox is served by DDX for PostgreSQL; see mirroring instructions
for how to clone and mirror all data and code used for this inbox