Thread (33 messages) flat view 33 messages, 10 authors, 2007-06-19

Re: limits on raid

From: Wakko Warner <hidden>
Date: 2007-06-16 14:13:00
Also in: lkml

Neil Brown wrote:
On Friday June 15, wakko@animx.eu.org wrote:
 
quoted
                                                  As I understand the way
raid works, when you write a block to the array, it will have to read all
the other blocks in the stripe and recalculate the parity and write it out.
Your understanding is incomplete.
For raid5 on an array with more than 3 drive, if you attempt to write
a single block, it will:

 - read the current value of the block, and the parity block.
 - "subtract" the old value of the block from the parity, and "add"
   the new value.
 - write out the new data and the new parity.

If the parity was wrong before, it will still be wrong.  If you then
lose a drive, you lose your data.
I see, I didn't know that the MD's raid5 did this.
And why is it such a big deal anyway?  The initial resync doesn't stop
you from using the array.  I guess if you wanted to put an array into
production instantly and couldn't afford any slowdown due to resync,
then you might want to skip the initial resync.... but is that really
likely?
When I've had an unclean shutdown on one of my systems (10x 50gb raid5) it's
always slowed the system down when booting up.  Quite significantly I must
say.  I wait until I can login and change the rebuild max speed to slow it
down while I'm using it.   But that is another thing.

Thanks for the clarification on raid5.

-- 
 Lab tests show that use of micro$oft causes cancer in lab animals
 Got Gas???
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help