Bug #359

FreeNAS 8 do not use a spare HDD in RAIDz2 for replacing a failed HDD on the WebUI

Added by Order Foots over 9 years ago. Updated about 5 years ago.

Target version:
Seen in:
Reason for Closing:
Reason for Blocked:
Needs QA:
Needs Doc:
Needs Merging:
Needs Automation:
Support Suite Ticket:
Hardware Configuration:
ChangeLog Required:


[[FreeNAS]] 8 seems not to use a spare HDD in RAIDz2 for replacing a failed HDD on the [[WebUI]].
I write down my operation and results in order. After that I propose 2 improvement plans.

1) I created a zfs RAIDz2 pool with 7HDDs(for RAIDz2), 2SSDs(for cache and logs)and 1HDD for spare. All storage is connected by SATA, AHCI mode. And I set "-m root" to "S.M.A.R.T. extra options" on the [[WebUI]].
2) After creating the pool, I remove a HDD from a hot-swapable bay instead of the HDD failure.
3) Reading/writing the pool, I checked zpool status command on SSH. The zpool status of the removed HDD indicated that read/write errors are increasing, still the removed HDD state is "ONLINE".
4) After that smartd daemon sends a report mail indicating "unable to open device" error, still the removed HDD state is "ONLINE".
5)Next day, zpool status of the pool became "DEGRADE" but the spare HDD was not used.(I guess that daily scrub job detected the removing HDD.)
6)I tried to replace the removed HDD to the spare HDD on the [[WebUI]]. But I couldn’t. Only the [[WebUI]] showed that pool is degrade and "View Disks" page is the same before removing HDD. There were no ways to replace the removed HDD to the spare HDD on the [[WebUI]].

I think that No.3-5 result is limitation/feature of zfs and [[FreeBSD]]. But I believe No.6 is a [[FreeNAS]]' bug.

Improvement plan 1 (better function and higher cost, I hope this plan.)
Implementing an error detection mechanism like Solaris FMA for automaticaly-replacing.
This plan will bring high-availability, and it is user-friendly. And implementing cost is higher.

Improvement plan 2 (minimum function and lower cost)
Implementing a suggestion function to replace a failed HDD. And implementing a replace function to use the spare HDD from [[WebUI]].
This plan is minimum function for using zfs spares on [[WebUI]]. And implementing cost is lower than plan 1.


#1 Updated by Janz - almost 9 years ago

yes, i also tried to add hot spares - but as murphy would have it a HDD failed a few days later and could not get it to "replace" failed drive.
Admittedly i may not have done it as meant - we go as the GUI allows and i did try several methods.

(reason for trying the HOT spare and not the 'normal' RAIDZ2 was the weird total space - i get varying answers using the same drives - sometimes half and sometimes 3/4 - but never as per theory/past experiences. So i thought a spare would help "bypass" that weird error as seeing 3 or 4TB 'disappear' is costly in many ways. It helped a little)

Anyway - back to using plain RAIDZ2 as i have replaced 2 or 3 drives on Freenas 8 alone - kinda hassle free but the GUI hopefully gets even better. I recovered the broken drive by recreating a RAIDZ2 array - no spares!)

#2 Updated by Jordan Hubbard almost 7 years ago

  • Status changed from Unscreened to Closed

#3 Avatar?id=14398&size=24x24 Updated by Kris Moore about 5 years ago

Commit: 40cec751b747fafc63c881ce75a1672d4dfd0ebd
Author: olgeni <>
Date: 2015-09-16 (Wed, 16 Sep 2015)

Log Message:
Revert upstream commit 1db17f2.

Clearing REDIS_CONNECTED causes hiredis not to call the async
disconnection callback (see GitHub issue #359).

Also available in: Atom PDF