mirror of
https://github.com/tkuschel/bees.git
synced 2025-11-18 15:29:14 +01:00
Previously, when the bees send workaround is enabled, bees would immediately advance the subvol's crawl status as if the entire subvol had been scanned. If the subvol is later made read-write, or if the workaround is disabled, bees sees that the subvol has already been marked as scanned. This is an unfortunate result if the subvol is inadvertently marked read-only or if bees is inadvertently run with the send workaround disabled. Instead, (almost) completely ignore the subvol: don't advance the crawl pointer, don't consider the subvol in the list if searchable roots, and don't consider the subvol when calculating min_transid for new subvols. The "almost" part is: if the subvol scan has not yet started, keep its start timestamp current so it won't mess up subvol traversal performance metrics. Also handle exceptions while determining whether a subvol is read-only, as those apparently do happen. Signed-off-by: Zygo Blaxell <bees@furryterror.org>
36 KiB
36 KiB