Header RSS Feed
 
If you only want to see the articles of a certain category, please click on the desired category below:
ALL Android Backup BSD Database Hacks Hardware Internet Linux Mail MySQL Monitoring Network Personal PHP Proxy Shell Solaris Unix Virtualization VMware Windows Wyse

ZFS is still resilvering when 100% done
Tuesday - Oct 7th 2014 - by - (1 comments)

On a Solaris 10 server I needed to replace a disk in a ZFS pool by using a spare drive:

zpool replace mypool c4t69d0 c5t65d0

ZFS then began to resilver the drive:

zpool status                          
  pool: mypool
 state: ONLINE
status: One or more devices is currently being resilvered.  The pool will
        continue to function, possibly in a degraded state.
action: Wait for the resilver to complete.
 scrub: resilver in progress for 0h0m, 0.00% done, 199h10m to go
config:
        NAME           STATE     READ WRITE CKSUM
        mypool         ONLINE       0     0     0
          mirror       ONLINE       0     0     0
            spare      ONLINE       0     0     0
              c4t69d0  ONLINE       0     0     0
              c5t65d0  ONLINE       0     0     0  16.6M resilvered
            c4t66d0    ONLINE       0     0     0
        spares
          c5t65d0      INUSE     currently in use
          c5t85d0      AVAIL  

After almost 11 hours, the scrub line mentioned 100% done, but the status was still resilvering:

 zpool status
  pool: mypool
 state: ONLINE
status: One or more devices is currently being resilvered.  The pool will
        continue to function, possibly in a degraded state.
action: Wait for the resilver to complete.
 scrub: resilver in progress for 10h45m, 100.00% done, 0h0m to go
config:
        NAME           STATE     READ WRITE CKSUM
        mypool         ONLINE       0     0     0
          mirror       ONLINE       0     0     0
            spare      ONLINE       0     0     0
              c4t69d0  ONLINE       0     0     0
              c5t65d0  ONLINE       0     0     0  480G resilvered
            c4t66d0    ONLINE       0     0     0
        spares
          c5t65d0      INUSE     currently in use
          c5t85d0      AVAIL  

Is the status line wrong? Can I ignore it? Or is the 100% a false information? I came across this post in the FreeNAS.org forums where in general the OP was asked to be patient and... just wait. So that's what I did, too. And indeed, a few hours later the resilvering finished:

zpool status
  pool: mypool
 state: ONLINE
 scrub: resilver completed after 12h21m with 0 errors on Mon Oct  6 20:51:46 2014
config:
        NAME           STATE     READ WRITE CKSUM
        mypool         ONLINE       0     0     0
          mirror       ONLINE       0     0     0
            spare      ONLINE       0     0     0
              c4t69d0  ONLINE       0     0     0
              c5t65d0  ONLINE       0     0     0  486G resilvered
            c4t66d0    ONLINE       0     0     0
        spares
          c5t65d0      INUSE     currently in use
          c5t85d0      AVAIL  

Note that another 6GB were resilvered in between. So there is no technical way to solve this. It's just patience.

At the end I just needed to detach c4t69d0:

zpool detach mypool c4t69d0

zpool status
  pool: mypool
 state: ONLINE
 scrub: resilver completed after 12h21m with 0 errors on Mon Oct  6 20:51:46 2014
config:
        NAME           STATE     READ WRITE CKSUM
        mypool         ONLINE       0     0     0
          mirror       ONLINE       0     0     0
            c5t65d0    ONLINE       0     0     0  486G resilvered
            c4t66d0    ONLINE       0     0     0
        spares
          c5t85d0      AVAIL  

 

Add a comment

Show form to leave a comment

Comments (newest first):

QS from Who Cares? wrote on Dec 9th, 2014:
It's probably resilvering data that has changed since the resilvering process began.


Go to Homepage home
Linux Howtos how to's
Nagios Plugins nagios plugins
Links links

Valid HTML 4.01 Transitional
Valid CSS!
[Valid RSS]

7667 Days
until Death of Computers
Why?