diff options
author | Rob Norris <[email protected]> | 2023-10-16 11:52:17 +1100 |
---|---|---|
committer | Brian Behlendorf <[email protected]> | 2024-08-16 12:03:43 -0700 |
commit | a1902f49509b66a475c7b4b0d081792f33f1dc52 (patch) | |
tree | ee1b85064692c8d51d397fe8350317761978ad7e /contrib/debian | |
parent | cd69ba3d49cdb939cba87e7fd6814608532df92f (diff) |
ddt: block scan until log is flushed, and flush aggressively
The dedup log does not have a stable cursor, so its not possible to
persist our current scan location within it across pool reloads.
Beccause of this, when walking (scanning), we can't treat it like just
another source of dedup entries.
Instead, when a scan is wanted, we switch to an aggressive flushing
mode, pushing out entries older than the scan start txg as fast as we
can, before starting the scan proper.
Entries after the scan start txg will be handled via other methods; the
DDT ZAPs and logs will be written as normal, and blocks not seen yet
will be offered to the scan machinery as normal.
Reviewed-by: Alexander Motin <[email protected]>
Reviewed-by: Brian Behlendorf <[email protected]>
Co-authored-by: Allan Jude <[email protected]>
Signed-off-by: Rob Norris <[email protected]>
Sponsored-by: Klara, Inc.
Sponsored-by: iXsystems, Inc.
Closes #15895
Diffstat (limited to 'contrib/debian')
0 files changed, 0 insertions, 0 deletions