Re: BUG #5055: Invalid page header error

From: Craig Ringer <craig(at)postnewspapers(dot)com(dot)au>
To: John R Pierce <pierce(at)hogranch(dot)com>
Cc: PostgreSQL bugs <pgsql-bugs(at)postgresql(dot)org>
Subject: Re: BUG #5055: Invalid page header error
Date: 2009-09-15 06:32:06
Message-ID: 1252996326.27254.21.camel@wallace.localnet
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-bugs

On Mon, 2009-09-14 at 22:58 -0700, John R Pierce wrote:

> and, if you're doing RAID with desktop grade disks, its quite possible
> for the drive to spontaneously decide a sector error requires a data
> relocation but not have the 'good' data to relocate, and not return an
> error code in time for the RAID controller or host md-raid to do
> anything about it. this results in a very sneaky sort of data
> corruption which goes undetected until some time later.
>
>
> this is the primary reason to use the premium "ES" grade SATA drives
> rather than the cheaper desktop stuff in a raid, they return sector
> errors in a timely fashion rather than retrying for many minutes in the
> background.

Ugh, really?

What do the desktop drives return in the mean time, when they haven't
been able to read a sector properly? Make something up and hope it gets
written to soon? That seems too hacky even for desktop HDD firmware,
which is saying something.

I've generally seen fairly prompt failure responses from desktop-grade
drives (and I see a lot of them fail!). While there are usually many
layers of OS-driven retries above the drive that delay reporting of
errors, the RAID volume the drive is a member of will generally block
until a retry succeeds or the OS layers between the software RAID
implementation and the disk give up and pass on the disk's error report.
That said, I've mostly used Linux's `md' software RAID, which while
imperfect seems to be pretty sane in terms of data preservation.

--
Craig Ringer

In response to

Browse pgsql-bugs by date

  From Date Subject
Next Message Heikki Linnakangas 2009-09-15 06:41:56 Re: GIN needs tonic
Previous Message Mark Kirkwood 2009-09-15 06:28:32 Re: BUG #5054: PDO -> Query returns "" from Boolean type field, if it has false value.