Re: consistency detect

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Thank all so much for reply.

On Mon, 2004-10-11 at 06:58, Brad Campbell wrote:
> Michael Tokarev wrote:
> 
> >> In short, it does not deal with it at all. RAID will deal with a disk 
> >> failure, it has no guarantees about consistency on power failures, 
> >> hard lockups or other catastrophic events.
> > 
> > 
> > This is incorrect.  In-kernel raid code keeps track of arrays and
> > underlying disk state during write operations.  On clean shutdown,
> > when everything has been written, raid superblocks on all disks
> > gets updated to indicate this.  In case of unclean shutdown, raid
> > code will reconstruct older copies of data using most recent ones
> > (ie, from a disk which has most recent "events" value in superblock).
> > The same is done for all other raid levels (4, 5, 6), but onot for
> > raid0 for obvious reasons (as there's no R in raid0 per se).
> 
> 
> When does the "events" value in the superblock actually get updated? I understood it only got 
> updated on an event, ie raid start, raid stop, disk add/remove/fail.
> 
yes, I guess if this information get updated frequently, it will have
impact on performance. but if not that frequently, it is useless for
this situation at all.


> I realise the system does an auto rebuild when started after an unclean shutdown, the question 
> really is how does it know which disk is the freshest in a raid-1? In a raid-4,5,6 it's pretty 
> obvious as there is really only one copy of the data, but then does the code actually ensure that 
> the data gets written before the updated parity? or does it just flush the lot to disk in what it 
> thinks is the most optimum fashion?
> 
> The In-kernel data becomes pretty moot when the kernel has just blasted a couple of large blocks out 
> to a couple of disks and the plug has been pulled. It's going to be pretty indeterminate as to which 
> disk has the most accurate image of what was actually sent to it. Thus my comment that there is 
> really no way of accurately dealing with a catastrophic failure, and RAID is not there to do that 
> anyway.
> 
with this indeterminate results, i do not know how raid code to detect
which one is the latest copy, or a half-half? and in previous email, u
suggest to have UPS and journal fs. but 1) u system will crash sometime
even with UPS, so a UPS can not 100% prevent this. 2) JFS can not 100%
solve this as well. especially when jfs only have metadata in log.


> I guess if you had a hardware RAID card that had a battery backed up RAM you have a much better 
> chance but then you really have a mini-ups :p)
> 
so here a NVRAM is the only way to solve this. :P also need a separate
cpu running separate code.

> Brad


ming


-
To unsubscribe from this list: send the line "unsubscribe linux-raid" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html

[Index of Archives]     [Linux RAID Wiki]     [ATA RAID]     [Linux SCSI Target Infrastructure]     [Linux Block]     [Linux IDE]     [Linux SCSI]     [Linux Hams]     [Device Mapper]     [Device Mapper Cryptographics]     [Kernel]     [Linux Admin]     [Linux Net]     [GFS]     [RPM]     [git]     [Yosemite Forum]


  Powered by Linux