# ZFS intent log



## tanked (Dec 12, 2012)

Hello, is it still necessary to mirror the intent log to avoid the possible loss of the pool if the log device fails? I've read that from pool version 19 it isn't necessary to do this.

Thanks for any clarification.


----------



## SirDice (Dec 12, 2012)

If I'm not mistaken you will want to mirror your ZIL. If the drive breaks the data that's supposed to written to disk will be lost. You therefor stand to lose data. I think you can remove the ZIL but doing so would clear it first (i.e. write all data to disk). A breakage obviously can't do that.

L2ARC however isn't so important, the stuff is still on disk so if the L2ARC breaks you only lose a bit of performance.


----------



## tanked (Dec 12, 2012)

Thanks, so is it correct to say that whilst some pending data waiting to be written to disk would be lost, I would not loose the entire pool (v.19 and above) in the event of an unmirrored log device failure?


----------



## SirDice (Dec 12, 2012)

I don't think that's the case but in all honesty I'm not 100% certain about that scenario. I am certain you will lose the data that's on the ZIL, waiting to be committed to disk.


----------



## tanked (Dec 12, 2012)

Thanks SirDice, I was just basing my information on the following at http://www.solarisinternals.com/wiki/index.php/ZFS_Best_Practices_Guide:



> Mirroring the log device is recommended. Prior to pool version 19, if you have an unmirrored log device that fails, your whole pool might be lost or you might lose several seconds of unplayed writes, depending on the failure scenario.
> In current releases, if an unmirrored log device fails during operation, the system reverts to the default behavior, using blocks from the main storage pool for the ZIL, just as if the log device had been gracefully removed via the "zpool remove" command.



Obviously as you and the guide have stated it is still advisable to have seperate mirrored log devices.


----------



## phoenix (Dec 12, 2012)

Correct.  If you've upgraded your pool to ZFSv28, then you are not *required* to mirror the SLOG.  A missing/corrupt log device will not cause the pool to be lost.  You will just lose the data in the log that has not yet been written to the pool.

It's still *recommended* to mirror the SLOG, to prevent even this tiny window of potential data loss.


----------

