> From: zfs-discuss-boun...@opensolaris.org [mailto:zfs-discuss-
> boun...@opensolaris.org] On Behalf Of Thomas Nau
> We use a STEC ZeusRAM as a log device for a 200TB RAID-Z2 pool.
> As they are supposed to be read only after a crash or when booting and
> those nice things are pretty expensive I'm wondering if mirroring
> the log devices is a "must / highly recommended"
Assuming you're running a recent version of zfs (zpool > 20 or so)...
The decision to mirror or not to mirror the log device hinges around one
single solitary failure condition...
In normal operation, a log device is write only. Never gets read until
after an ungraceful system crash. Unfortunately, it is sometimes possible
for flash memory to enter a failure state which is undetected by writes, and
only detected upon reads. In this state, you effectively have no log
device, but you think you do. If you're in that failure state and you have
an ungraceful crash, then you lose whatever you thought you had in the log.
Maybe it will help if you periodically remove the log device, and then read
& write the whole log device to verify it's operational (be sure to actually
detect failures if any) and then re-add the log device to the pool. Seems
logical. Probably nobody's ever tested it.
If you have a failed unmirrored log device at the same time as an ungraceful
system crash, then you lose data. (Up to 30 sec, or 5 sec worth, depending
on your system.)
Your decision to mirror or not to mirror all hinges around your fear of the
aforementioned coincidence of log device failure & ungraceful system crash.
Bear in mind, that mirroring does not eliminate the possibility of both log
devices being in the same undetected failure state. It doesn't eliminate
the problem, only reduces the probability.
zfs-discuss mailing list