Closed
Description
System information
Type | Version/Name |
---|---|
Distribution Name | Debian |
Distribution Version | 12.1 |
Kernel Version | 6.1.0-11-amd64 |
Architecture | x86-64 |
OpenZFS Version | 2.1.11 |
Describe the problem you're observing
Sometimes, L2ARC restore fails without apparent reason. /proc/spl/kstat/zfs/dbgmsg
simply shows L2ARC rebuild no valid log blocks
. See below for an example.
# L2ARC populated
root@debian12:~/zfs/zfs-2.1.11# zpool iostat -v
capacity operations bandwidth
pool alloc free read write read write
----------------- ----- ----- ----- ----- ----- -----
tank 299M 15.2G 1 0 32.5K 5.98K
vdb 299M 15.2G 1 0 32.5K 5.98K
indirect-1 - - 0 0 0 0
cache - - - - - -
/root/l2arc.img 6.37M 3.99G 0 0 399 5.54K
----------------- ----- ----- ----- ----- ----- -----
# exporting and reimporting pool, L2ARC is empty now
root@debian12:~/zfs/zfs-2.1.11# zpool export tank; zpool import tank
root@debian12:~/zfs/zfs-2.1.11# zpool iostat -v
capacity operations bandwidth
pool alloc free read write read write
----------------- ----- ----- ----- ----- ----- -----
tank 299M 15.2G 48 78 998K 956K
vdb 299M 15.2G 48 78 998K 956K
indirect-1 - - 0 0 0 0
cache - - - - - -
/root/l2arc.img 0 4.00G 5 2 296K 15.4K
----------------- ----- ----- ----- ----- ----- -----
# no valid log blocks
root@debian12:~/zfs/zfs-2.1.11# tail /proc/spl/kstat/zfs/dbgmsg
1692828434 spa_history.c:307:spa_history_log_sync(): txg 21334 L2ARC rebuild no valid log blocks
1692828434 spa_history.c:294:spa_history_log_sync(): command: zpool import tank
# create some new metadata L2ARC cache
root@debian12:~/zfs/zfs-2.1.11# time find /tank/test/fsmark/ -exec stat {} \+ > /dev/null
root@debian12:~/zfs/zfs-2.1.11# zpool iostat -v
capacity operations bandwidth
pool alloc free read write read write
----------------- ----- ----- ----- ----- ----- -----
tank 299M 15.2G 51 6 1.07M 76.8K
vdb 299M 15.2G 51 6 1.07M 76.8K
indirect-1 - - 0 0 0 0
cache - - - - - -
/root/l2arc.img 4.83M 3.99G 0 2 13.2K 139K
----------------- ----- ----- ----- ----- ----- -----
# exporting and reimporting pool, L2ARC was preserved this time.
root@debian12:~/zfs/zfs-2.1.11# zpool iostat -v
capacity operations bandwidth
pool alloc free read write read write
----------------- ----- ----- ----- ----- ----- -----
tank 299M 15.2G 37 47 605K 592K
vdb 299M 15.2G 37 47 605K 592K
indirect-1 - - 0 0 0 0
cache - - - - - -
/root/l2arc.img 6.42M 3.99G 7 1 187K 8.87K
----------------- ----- ----- ----- ----- ----- -----
# log blocks restored
root@debian12:~/zfs/zfs-2.1.11# tail /proc/spl/kstat/zfs/dbgmsg
1692828904 spa_history.c:307:spa_history_log_sync(): txg 21482 L2ARC rebuild successful, restored 4 blocks
1692828904 spa_history.c:294:spa_history_log_sync(): command: zpool import tank
Describe how to reproduce the problem
No specific reproduced yet, it simply happens.
Include any warning/errors/backtraces from the system logs
None.