ZFS degraded after moving to othe disks

Joe77

Member
Nov 18, 2022
9
3
8
Hi,

yesterday i moved my ZFS pool from 2 SSD (S-ATA) to 2 brand new NVMe Disk. I used the "zpool replace -f" command to move the data. When moving the first disk it seems to be all right and zpool status showed no error. After resilvering was done i moved the next disk and suddenly checksum failure came up on disk1. I didn't want to interrupt the resilvering of disk 2 so i decided to let it run until the end.

Today i run zpool scrub and got this:


root@pve:~# zpool status
pool: ZFS
state: DEGRADED
status: One or more devices has experienced an error resulting in data
corruption. Applications may be affected.
action: Restore the file in question if possible. Otherwise restore the
entire pool from backup.
see: https://openzfs.github.io/openzfs-docs/msg/ZFS-8000-8A
scan: scrub repaired 17.5M in 00:26:58 with 56 errors on Sun May 18 09:45:08 2025
config:

NAME STATE READ WRITE CKSUM
ZFS DEGRADED 0 0 0
mirror-0 DEGRADED 0 0 0
nvme-Samsung_SSD_990_PRO_2TB_S7PJNJ0Y300894E DEGRADED 0 0 43.5K too many errors
nvme-Samsung_SSD_990_PRO_2TB_S7PJNJ0Y300895T DEGRADED 0 0 45.7K too many errors

errors: 68 data errors, use '-v' for a list

I'm not shure what do do now. Delete the ZFS and restore from yesterday Backup? On the new disk or on the old disk? Is it possilbe to repair the ZFS?

What do you tink?

Kind regards

Jochen
 
Hello,

@Kingneutron: Yes the latest firmware is installed.

Because of the errors i decided to delete the whole ZFS on the NVMe and went back to the old disk from my backup. After this was done and everything was ok, I created a new ZFS mirror on the NVMe disk but then i didn't move the data by using zpool -replace. I stoped the VM, did a backup and then restore the backup on the new ZFS. This worked without an issue. After a few days i can say it works fine. It was a little downtime but now it is fine.

Kind regards

Jochen
 
Bad dissension, don't use Samsung SSD 990 PRO 2TB with ZFS.
They will die soon and have noch PL protection and use SLC Caching.