TrueNAS 25.10.7: Two deleted files remain in the ZFS delete queue with L1 checksum errors

Hi everyone,

I would appreciate some advice on two deleted file objects that remain in the ZFS delete queue and continue to appear as permanent errors.

I no longer need either file and am happy to lose their contents. My goal is to remove these two objects while preserving the remaining data in the dataset.

Pool and dataset names below have been anonymized.

System and storage

  • TrueNAS version: 25.10.7
  • Pool: nas2
  • Layout: five-disk RAIDZ1, plus one cache device
  • Affected dataset: nas2/data
  • Mountpoint: /mnt/nas2/data
  • Dataset usage: 16.1 TiB; logical usage: 17.6 TiB
  • Available space: 35.8 TiB
  • No child datasets
  • No current snapshots found for this dataset or its descendants
  • Both the pool and dataset have readonly=off
  • Dataset quota and refquota are both none

I do not currently have an independent backup. I understand that this limits the safe recovery options.

Persistent errors

The pool reports ONLINE, but zpool status -v "nas2" continues to show:

errors: Permanent errors have been detected in the following files:

        nas2/data:<0x3812e>
        nas2/data:<0x3c486>

At the latest check, all five data disks were ONLINE, with READ=0, WRITE=0, and CKSUM=436 on each. The cache device showed zero errors. I have not established the original cause of the corruption.

What I found with zdb

Both objects are reported as ZFS plain file, with a link count of zero:

Object ID Decimal ID File size in bytes Links
0x3812e 229678 1,180,555,312 0
0x3c486 246918 28,124,510,642 0

The dataset master node identifies object 33 as DELETE_QUEUE. Inspecting it still shows exactly these two entries:

microzap: 13312 bytes, 2 entries
        3c486 = 246918
        3812e = 229678

The dataset’s object-set ID is 4491 (0x118b).

Error events

An error-only scrub completed immediately but reported:

scrubbed 3 error blocks in 0 days 00:00:00

The same two objects remained listed afterward.

The captured events include:

zio_err = 0x34
zio_objset = 0x118b
zio_object = 0x3812e
zio_level = 0x1
zio_blkid = 0x6

Another captured entry shows:

zio_object = 0x3c486
zio_level = 0x1
zio_blkid = 0x8e

These are excerpts, not a complete listing of all three reported error blocks. The zio_level=1 entries appear to indicate damaged indirect metadata blocks.

Steps already taken

  • Rebooted TrueNAS; the same objects remained.

  • Checked for open, deleted files with:

    lsof -nP +aL1 "/mnt/nas2/data"
    

    This returned no output.

  • Confirmed zfs_unlink_suspend_progress is 0.

  • Confirmed feature@head_errlog is active.

  • Ran:

    zpool scrub -e -w "nas2"
    

    Both permanent errors and both delete-queue entries remained.

  • Deleted the former parent directory tree of object 0x3812e. A subsequent check still showed both objects in the delete queue and in the permanent-error list.

I also found OpenZFS discussion #18783, which describes similar persistent errors for deleted objects with links=0, although I do not know whether the underlying cause is the same.

Questions

  1. Is this the expected outcome when unreadable indirect blocks prevent an unlinked object from being freed, or could it be a known cleanup issue?
  2. Is there a supported, narrowly scoped way to discard these two objects and complete cleanup while preserving the rest of the dataset?
  3. Are there relevant fixes or additional read-only diagnostics I should check? I can provide the exact zfs version output and further logs.

Thank you for any guidance. I would particularly appreciate advice on the appropriate next step before attempting low-level metadata changes.

Full hardware details could help. How are disks attached? Is virtualization of TrueNAS involved?

root@nas[~]# systemd-detect-virt
none
root@nas[~]# lscpu | grep -E ‘^CPU(s):|Model name:|Hypervisor vendor:|Virtualization type:’
CPU(s): 32
Model name: Intel(R) Xeon(R) CPU E5-2667 v4 @ 3.20GHz
BIOS Model name: Intel(R) Xeon(R) CPU E5-2667 v4 @ 3.20GHz CPU @ 3.2GHz
root@nas[~]# free -h
total used free shared buff/cache available
Mem: 125Gi 115Gi 6.7Gi 160Mi 5.7Gi 10Gi
Swap: 0B 0B 0B
root@nas[~]# cat “/sys/class/dmi/id/board_vendor” “/sys/class/dmi/id/board_name”

Dell Inc.

0W9WXC
root@nas[~]# lsblk -d -o NAME,SIZE,MODEL,TRAN
NAME SIZE MODEL TRAN
sda 223.6G KINGSTON SA400S37240G
sdb 14.6T TOSHIBA MG08ACA16TE
sdc 14.6T TOSHIBA MG08ACA16TE
sdd 14.6T TOSHIBA MG08ACA16TE
sde 14.6T TOSHIBA MG08ACA16TE
sdf 14.6T TOSHIBA MG08ACA16TE
sr0 1024M PLDS DVD-ROM DH-16D7S sata
zd0 2G
nvme0n1 931.5G HP SSD EX900 1TB nvme
root@nas[~]# lspci -nnk | grep -A3 -Ei ‘SATA|SAS|RAID|SCSI|Non-Volatile|Virtio’
00:11.4 SATA controller [0106]: Intel Corporation C610/X99 series chipset sSATA Controller [AHCI mode] [8086:8d62] (rev 05)
Subsystem: Dell C610/X99 series chipset sSATA Controller [AHCI mode] [1028:0602]
Kernel driver in use: ahci
Kernel modules: ahci
00:16.0 Communication controller [0780]: Intel Corporation C610/X99 series chipset MEI Controller #1 [8086:8d3a] (rev 05)

00:1f.2 SATA controller [0106]: Intel Corporation C610/X99 series chipset 6-Port SATA Controller [AHCI mode] [8086:8d02] (rev 05)

Subsystem: Dell C610/X99 series chipset 6-Port SATA Controller [AHCI mode] [1028:0602]
Kernel driver in use: ahci
Kernel modules: ahci
01:00.0 Ethernet controller [0200]: Intel Corporation I350 Gigabit Network Connection [8086:1521] (rev 01)

03:00.0 RAID bus controller [0104]: Broadcom / LSI MegaRAID SAS-3 3108 [Invader] [1000:005d] (rev 02)

Subsystem: Dell PERC H730 Adapter [1028:1f43]
Kernel driver in use: megaraid_sas
Kernel modules: megaraid_sas
06:00.0 PCI bridge [0604]: Renesas Technology Corp. SH7758 PCIe Switch [PS] [1912:001d]
Subsystem: Renesas Technology Corp. SH7758 PCIe Switch [PS] [1912:001d]
Kernel driver in use: pcieport
07:00.0 PCI bridge [0604]: Renesas Technology Corp. SH7758 PCIe Switch [PS] [1912:001d]
Subsystem: Renesas Technology Corp. SH7758 PCIe Switch [PS] [1912:001d]
Kernel driver in use: pcieport
08:00.0 PCI bridge [0604]: Renesas Technology Corp. SH7758 PCIe-PCI Bridge [PPB] [1912:001a]
Subsystem: Renesas Technology Corp. SH7758 PCIe-PCI Bridge [PPB] [1912:001a]
09:00.0 VGA compatible controller [0300]: Matrox Electronics Systems Ltd. G200eR2 [102b:0534] (rev 01)
DeviceName: Embedded Video
Subsystem: Dell G200eR2 [1028:0602]

82:00.0 Non-Volatile memory controller [0108]: Silicon Motion, Inc. SM2263EN/SM2263XT SSD Controller [126f:2263] (rev 03)
Subsystem: Silicon Motion, Inc. SM2263EN/SM2263XT (DRAM-less) NVMe SSD Controllers [126f:2263]
Kernel driver in use: nvme
Kernel modules: nvme
root@nas[~]# zfs version
zfs-2.3.9-1
zfs-kmod-2.3.9-1
root@nas[~]#