OK, here we go again! Bitten by ZFS for the umpteen time.
So I have a raidz1 called tank1 composed of 4 hdd's of different sizes.
One of the HDDs suddenly dies (i.e. it won't spin up).
Ok, so zpool status indicates that tank1 is DEGRADED and ada5 (the dead hdd) is UNAVAILBLE.
So, after considerable reading of several ZFS manuals, I decide to follow the replacement instructions by the numbers:
1 - turn the system off
2 - replace the damaged hdd with a good hdd on the same controller, same port
3 - bring the system on
4 - issue the command zpool tank1 replace /dev/ada5
So, ZFS starts resilvering ada5. So far so good.
A few chksum errors and 8 corrupted files later, ZFS finishes resilvering.
A few more pages later, I decide to erase those 8 files to clear the errors. I do so. However, there is no change in tank1's status.
Problem is, the pool is still listed as DEGRADED, /dev/ada5/old status is RESILVERING and the new ada5 hdd is ONLINE.
After checking that ZFS is doing bupkus (i.e. it has indeed finished resilvering), I try to bring ada5 ONLINE (just to make sure) with no effect whatsoever. OK.
Then I bring /dev/ada5/old OFFLINE, with no effect.
Then I DETACH /dev/ada5/old and tank1 becomes ONLINE.
Fine. Then I again, follow the manual's recommended procedure and issue a zpool scrub tank1 command.... and.... ZFS start reslivering ada5!!!
WTF!!!
It is resilvering the hdd that just resilvered!!! And from scratch!!!
So, in summary:
1 - The manual is crap. ZFS does not do what the manual says it will do.
2 - The RESILVERING status does not get cleared automatically.
3 - Permanent errors do not get cleared (will they be cleared once the resivlering is done? do I need to scrub to get rid of them?)
4 - One has to DETACH a "ghost" hdd manually!!!
5 - The darn thing has a mind of his own!

Anybody has any idea of what's going on? That would be *very* much appreciated indeed!
So I have a raidz1 called tank1 composed of 4 hdd's of different sizes.
One of the HDDs suddenly dies (i.e. it won't spin up).
Ok, so zpool status indicates that tank1 is DEGRADED and ada5 (the dead hdd) is UNAVAILBLE.
So, after considerable reading of several ZFS manuals, I decide to follow the replacement instructions by the numbers:
1 - turn the system off
2 - replace the damaged hdd with a good hdd on the same controller, same port
3 - bring the system on
4 - issue the command zpool tank1 replace /dev/ada5
So, ZFS starts resilvering ada5. So far so good.
A few chksum errors and 8 corrupted files later, ZFS finishes resilvering.
A few more pages later, I decide to erase those 8 files to clear the errors. I do so. However, there is no change in tank1's status.
Problem is, the pool is still listed as DEGRADED, /dev/ada5/old status is RESILVERING and the new ada5 hdd is ONLINE.
After checking that ZFS is doing bupkus (i.e. it has indeed finished resilvering), I try to bring ada5 ONLINE (just to make sure) with no effect whatsoever. OK.
Then I bring /dev/ada5/old OFFLINE, with no effect.
Then I DETACH /dev/ada5/old and tank1 becomes ONLINE.
Fine. Then I again, follow the manual's recommended procedure and issue a zpool scrub tank1 command.... and.... ZFS start reslivering ada5!!!
WTF!!!
It is resilvering the hdd that just resilvered!!! And from scratch!!!
So, in summary:
1 - The manual is crap. ZFS does not do what the manual says it will do.
2 - The RESILVERING status does not get cleared automatically.
3 - Permanent errors do not get cleared (will they be cleared once the resivlering is done? do I need to scrub to get rid of them?)
4 - One has to DETACH a "ghost" hdd manually!!!
5 - The darn thing has a mind of his own!
Anybody has any idea of what's going on? That would be *very* much appreciated indeed!