Skip site navigation (1) Skip section navigation (2)

Re: 8192 BLCKSZ ?

From: Nathan Myers <ncm(at)zembu(dot)com>
To: pgsql-hackers(at)postgresql(dot)org
Subject: Re: 8192 BLCKSZ ?
Date: 2000-11-28 21:50:18
Message-ID: 20001128135018.E22345@store.zembu.com (view raw or flat)
Thread:
Lists: pgsql-hackers
On Tue, Nov 28, 2000 at 04:24:34PM -0500, Tom Lane wrote:
> Nathan Myers <ncm(at)zembu(dot)com> writes:
> > In the event of a power outage, the drive will stop writing in
> > mid-sector.
> 
> Really?  Any competent drive firmware designer would've made sure that
> can't happen.  The drive has to detect power loss well before it
> actually loses control of its actuators, because it's got to move
> the heads to the safe landing zone.  If it checks for power loss and
> starts that shutdown process between sector writes, never in the middle
> of one, voila: atomic writes.

I used to think that way too, because that's how I would design a drive.
(Anyway that would still only give you 512-byte-atomic writes, which 
isn't enough.)

Talking to people who build them was a rude awakening.  They have
apparatus to yank the head off the drive and lock it away when the 
power starts to go down, and it will happily operate in mid-write.
(It's possible that some drives are made the way Tom describes, but 
evidently not the commodity stuff.)

The level of software-development competence, and of reliability 
engineering, that I've seen among disk drive firmware maintainers
distresses me whenever I think about it.  A disk drive is best
considered as throwaway cache image of your real medium.

> Of course, there's still no guarantee if you get a hardware failure
> or sector write failure (recovery from the write failure might well
> take longer than the drive has got).  But guarding against a plain
> power-failure scenario is actually simpler than doing it the wrong
> way.

If only the disk-drive vendors (and buyers!) thought that way...

Nathan Myers
ncm(at)zembu(dot)com


In response to

pgsql-hackers by date

Next:From: Ron ChmaraDate: 2000-11-28 22:25:05
Subject: Re: beta testing version
Previous:From: Tom LaneDate: 2000-11-28 21:24:34
Subject: Re: 8192 BLCKSZ ?

Privacy Policy | About PostgreSQL
Copyright © 1996-2014 The PostgreSQL Global Development Group