zfs send size estimate is inaccurate for some zvols
The send size estimate for a zvol can be too low, if the size of the record headers (dmu_replay_record_t's) is a significant portion of the size.
This is typically the case when the data is highly compressible, especially with embedded blocks.
The problem is that dmu_adjust_send_estimate_for_indirects() assumes that blocks are the size of the "recordsize" property (128KB).
However, for zvols, the blocks are the size of the "volblocksize" property (8KB). Therefore, we estimate that there will be 16x less record headers than there really will be.
Updated by Electric Monk over 4 years ago
- Status changed from New to Closed
- % Done changed from 0 to 100
commit 0255edcc85fc0cd1dda0e49bcd52eb66c06a1b16 Author: Paul Dagnelie <firstname.lastname@example.org> Date: 2017-06-08T01:57:05.000Z 8056 zfs send size estimate is inaccurate for some zvols Reviewed by: Matthew Ahrens <email@example.com> Reviewed by: Pavel Zakharov <firstname.lastname@example.org> Approved by: Robert Mustacchi <email@example.com>