diff --git a/docs/btrfs-kernel.md b/docs/btrfs-kernel.md index 2396604..64c0343 100644 --- a/docs/btrfs-kernel.md +++ b/docs/btrfs-kernel.md @@ -38,9 +38,6 @@ Unfixed kernel bugs (as of 4.14.71): `rsync` is copying from, while `rsync` will rename the new file over the old file to replace it. -* **btrfs send** has various problems when bees is deduping RO snapshots, - especially if the snapshot is used as a parent for incremental send. - Minor kernel problems with workarounds: * **Slow backrefs** (aka toxic extents): Under certain conditions, @@ -52,6 +49,19 @@ Minor kernel problems with workarounds: to get slow. In the bees log, such blocks are labelled as 'toxic' hash/block addresses. +* **btrfs send** has various bugs that are triggered when bees is + deduping snapshots. bees provides the [`--workaround-btrfs-send` + option](options.md) which should be used whenever `btrfs send` and + bees are run on the same filesystem. + + This issue affects: + * `btrfs send` (any mode) and bees active at the same time. + * `btrfs send` in incremental mode (using `-p` option) with bees + active at the same or different times. + + Note `btrfs receive` is not affected. It is OK to run bees with no + workarounds on a filesystem that receives btrfs snapshots. + Older kernels: * Older kernels have various data corruption and deadlock/hang issues diff --git a/docs/btrfs-other.md b/docs/btrfs-other.md index 0ca961f..3b5982b 100644 --- a/docs/btrfs-other.md +++ b/docs/btrfs-other.md @@ -28,11 +28,9 @@ bees has been tested in combination with the following, and various problems are * bcache, lvmcache: **severe (filesystem-destroying) metadata corruption issues** observed in testing and reported by users, apparently only when used with bees. Plain SSD and HDD seem to be OK. -* btrfs send: some kernel versions have bugs in btrfs send that can be - triggered by bees. The send can be restarted and will work if bees - has finished processing the snapshot being sent. No data corruption - observed other than the truncated send. Incremental send doesn't seem - to work with bees running on the sending side. +* btrfs send: there are bugs in `btrfs send` that can be triggered by bees. + The [`--workaround-btrfs-send` option](options.md) works around this issue, + but possibly at great cost. * btrfs qgroups: very slow, sometimes hangs...and it's even worse when bees is running. * btrfs autodefrag mount option: hangs and high CPU usage problems diff --git a/docs/options.md b/docs/options.md index 741f680..4af08d9 100644 --- a/docs/options.md +++ b/docs/options.md @@ -1,52 +1,92 @@ # bees Command Line Options -
--thread-count COUNT | -c | -Specify maximum number of worker threads for scanning. Overrides ---thread-factor (-C) and default/autodetected values. - |
---|---|---|
--thread-factor FACTOR | -C | -Specify ratio of worker threads to CPU cores. Overridden by --thread-count (-c). - Default is 1.0, i.e. 1 worker thread per detected CPU. Use values - below 1.0 to leave some cores idle, or above 1.0 if there are more - disks than CPUs in the filesystem. - |
--loadavg-target LOADAVG | -g | -Specify load average target for dynamic worker threads. - Threads will be started or stopped subject to the upper limit imposed - by thread-factor, thread-min and thread-count until the load average - is within +/- 0.5 of LOADAVG. - |
--thread-min COUNT | -G | -Specify minimum number of worker threads for scanning. - Ignored unless -g option is used to specify a target load. |
--scan-mode MODE | -m | -
-Specify extent scanning algorithm. Default mode is 0.
-EXPERIMENTAL feature that may go away.
-
|
--timestamps | -t | -Enable timestamps in log output. |
--no-timestamps | -T | -Disable timestamps in log output. |
--absolute-paths | -p | -Paths in log output will be absolute. |
--strip-paths | -P | -Paths in log output will have the working directory at bees startup - stripped. |
--verbose | -v | -Set log verbosity (0 = no output, 8 = all output, default 8). |