OpenZFS Continues to Grapple with Data Corruption Challenges
Last week saw the release of OpenZFS 2.2.1, which was initially believed to have fixed a data corruption issue attributed to a block cloning bug in a new feature introduced in the v2.2 release. However, further investigation over the US holiday weekend revealed that the block cloning feature was not the root cause, and both v2.2.1 and pre-v2.2 releases remain susceptible to data corruption.
It has been discovered that the data corruption bug affects not only the v2.2 release but also older versions of OpenZFS. While real-world instances of data corruption are believed to be limited, scripting can reproduce the issue. Additionally, it is now understood that the OpenZFS 2.2 block cloning feature increases the likelihood of encountering the problem.
The FreeBSD project has issued an advisory regarding the OpenZFS data corruption issue and recommends a workaround involving setting sysctl vfs.zfs.dmu_offset_next_sync=0
to “drastically reduce the likelihood” of experiencing the problem.
A pending pull request on GitHub is anticipated to address the OpenZFS data corruption issue. Hopefully, a new OpenZFS point release will be available soon, effectively resolving the data corruption problem.
Source: Phoronix.