Michał Sawicz wrote:
... I wanted to start a discussion whether this at all makes sense, what can
be the use cases etc. ...
This appears just a great feature to me, you get my vote.
I also was thinking about something similar. This is probably the most
desirable feature request for MD for me right now.
Use cases could be:
- 1 - the obvious one: you are seeing some preliminary errors
(correctable read errors, or SMART errors) on the disk and you want to
replace it without making the array degraded & temporarily vulnerable.
- 2 - recoverying from a really bad array having multiple read errors in
different places in multiple disks (replacing one disk at a time with
the feature you suggest): consider that while filling each sector of the
the hot-spare the algorithm has 2 places where to read data from:
firstly it can try read from the drive being replaced, and then if that
one returns read errors it can get the information from parity.
Currently there is no other way to do this with this level of redundancy
AFAIK, at least not automatically and not with the array online.
Consider that if you have a bad array as described, doing a full scrub
would take the array down, i.e. the scrub would never successfully
finish, and the new drive could never be filled with data. While with
the feature you suggest, there is no scrub on the whole array: data is
taken only from the drive being replaced for all the sectors (that's the
only disk being scrubbed), except possibly for a few sectors being
defective on that disk, for which parity is used.
Thank you
Asdo
--
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