> For a synchronous write to a pool with mirrored disks, does the write
> unblock after just one of the disks' write caches is flushed,
> or only after all of the disks' caches are flushed?

The latter.  We don't consider a write to be committed until
the data is on stable storage at full replication.

This might seem overly paranoid, because the only we could lose a
transaction would be if we acked a write to some over-the-network
app after writing to one side of a mirror, crashed, came back up,
and then that side of the mirror failed before intent log replay
(which happens during boot when we mount ZFS filesystems).

What are the chances that you'd lose power *and* a lose disk at the
same time?  If they were independent events, it would be unlikely.
But the thing is, power failures often cause disk failures.
The probability of coupled failure isn't low enough to ingore.

Jeff

_______________________________________________
zfs-discuss mailing list
zfs-discuss@opensolaris.org
http://mail.opensolaris.org/mailman/listinfo/zfs-discuss

Reply via email to