For example, on brand name servers like HP DL120G7 with HP P410, when running FreeBSD on a zfs with a zpool mirror, or DragonFly BSD with mirroring through HAMMER etc.

The following questions come to mind:

Will the data on the non-failed drive that is part of a RAID0 still be usable?
Or do the controllers spread the RAID0 data between the drives in a pseudorandom manner?

Would ZFS at all know how the data is spread between the drives for its mirror functionality to function properly?

I've heard some controllers don't let you avoid a hardware RAID (with P410 being such); in such case, do they generally make an exception so as to allow RAID0 arrays of just one disc, instead of a common minimum of two?

When the failed drive is replaced by a datacentre technician, would it affect the data on the drive that has not failed?

You pop in a new drive and rebuild the array. Lose the other drive = bye-bye data!
–
Nathan COct 11 '13 at 19:37

Using one raid0 per drive as a passthrough?
–
JamesRyanOct 11 '13 at 19:37

4

@NathanC No Raid0 is striped, you lose 1 drive, you lose all from that array. But there must be more to the question as to how zfs is involved.
–
JamesRyanOct 11 '13 at 19:38

I don't understand why this is marked as a duplicate. The answer to the other question doesn't address my question at all. Again, this is an issue of people marking the question as duplicate based on the wrong answers and comments by other people, WTF?
–
cnstOct 11 '13 at 21:36

1

@cnst, so the linked question has the statement This means that a single disk failure destroys the entire array under the RAID0 section. How does that not answer your question? If that doesn't answer your question, then perhaps your question isn't clear.
–
ZoredacheOct 11 '13 at 21:43

R0 is striped RAID, the stripe width depends on the specific configuration at creation time. There are a few things that make recovery (even with ZFS magic) nigh impossible:

Hardware R0 does not expose details of the stripe-plan to the OS, at least not without specific drivers.

Without details of the stripe-plan and RAID level, ZFS has nothing around which to formulate a failure-tolerance method.

When one drive fails, all the data on that drive is completely lost.

Most if not all hardware RAID adapters will completely fail a R0 set when a failure happens, and not even allow rebuilding (there is nothing to rebuild). The only recovery is to recreate.

Even if the FS was failure tolerant, most hardware RAID adapters will scrub the disks of a new R0-set, erasing any recoverable data on the surviving drives. (this is a configurable default in some systems, though).

To engineer a filesystem to survive a failure in a R0 set, it needs all of the details of the disks under the set. At that point its generally a lot easier to not bother with hardware R0, and just present a bunch of disks to the FS and let it manage everything.

So, what happens with a 1-HDD RAID0 set: if the drive experiences intermittent read errors, would the whole 1-disc set become unavailable, or would it still continue letting you read the data on the parts of the drive that are still OK?
–
cnstOct 14 '13 at 19:58

@cnst That depends on the individual RAID card. The manual for the HP P410 you mentioned does not specify. I haven't worked with enough flaky-disk R0 sets to know how they respond.
–
sysadmin1138♦Oct 14 '13 at 20:08