Index index by Group index by Distribution index by Vendor index by creation date index by Name Mirrors Help Search

bees-0.11-1.1 RPM for x86_64

From OpenSuSE Tumbleweed for x86_64

Name: bees Distribution: openSUSE Tumbleweed
Version: 0.11 Vendor: openSUSE
Release: 1.1 Build date: Wed Jul 16 12:35:23 2025
Group: System/Filesystems Build host: reproducible
Size: 1427613 Source RPM: bees-0.11-1.1.src.rpm
Packager: https://bugs.opensuse.org
Url: https://github.com/Zygo/bees
Summary: Best-Effort Extent-Same, a btrfs deduplication agent
bees is a block-oriented userspace deduplication agent designed for large btrfs
filesystems. It is an offline dedupe combined with an incremental data scan
capability to minimize time data spends on disk from write to dedupe.

Hilights:

* Space-efficient hash table and matching algorithms - can use as little as 1
  GB hash table per 10 TB unique data (0.1GB/TB)
* Daemon incrementally dedupes new data using btrfs tree search
* Works with btrfs compression - dedupe any combination of compressed and uncompressed files
* Persistent hash table for rapid restart after shutdown
* Whole-filesystem dedupe - including snapshots
* Constant hash table size - no increased RAM usage if data set becomes larger
* Works on live data - no scheduled downtime required
* Automatic self-throttling based on system load

Provides

Requires

License

GPL-3.0-only

Changelog

* Wed Jul 16 2025 Gerald Chen <gerald_chen@foxmail.com>
  - Update to 0.11:
    * Introduce *extent scan mode* that scans the extent tree directly. It is the
      new default scan mode.
    * Show estimated data size and expected time to finish scanning in logs and
      status outputs.
    * Smarter dedupe criteria that prevents dedupe operations that save less than
      half the blocks in an extent or require more than 100 copy/dedupe operations
      to free space.
    * Add the new dynamic rate throttling option `--throttle-factor` to estimate
      the rate at which the kernel deletes extents and slow down dedupe requests
      to match this rate.
    * Threads now dynamically redistribute their work so that they can make
      continuous progress without waiting for each other.
    * Remove excessively costly "toxic extent" workarounds yielding up to
      100x–1000x speed boost on some workloads.
    * Coordinate between threads to prevent thrashing during disk reads.
    * Prefetche data into page-cache before dedupe calls.
    * Submit full-extent dedupe operations, avoiding obsolete 16M kernel limits.
    * Reduce the size of `ioctl` buffers, which avoids forcing the kernel to
      evict pages from memory to accommodate large buffers.
    * Limit reference counts for very frequently duplicated data, which avoids
      performance issues in btrfs (even when bees is not running).
    * Use the new `openat2` system call for improved robustness against rename and
      symlink attacks.
    * Use a private mount namespace for isolation even without `systemd`.
    * Recude warning and debug log verbosity.
    * `SIGUSR1` and `SIGUSR2` signals allow bees to be paused and unpaused without
      preventing bees from closing open files and subvols during the pause.
    * It is now safe to locate `$BEESHOME` on filesystems such as XFS that lack
      data flushing on `rename`.
    * Fix 32-bit `ioctl` compatibility for mixed 32/64-bit systems.
    * Detect a `btrfs send` in progress, and wait for it to complete
      automatically. `--workaround-btrfs-send` is no longer necessary when used
      with extent scan mode.
* Thu Mar 07 2024 Max Lin <mlin@suse.com>
  - Fix build fail with gcc7 on Leap 15
    * Use gcc13 on compilation
* Mon Jul 24 2023 Frederic Crozat <fcrozat@suse.com>
  - Update to 0.10:
    * Update kernel bugs list to 6.4.1
    * Update docs
    * Build fixes for GCC 13 and clang 16
  - Drop avoid-swap.patch, no longer needed.
* Tue Apr 04 2023 Dirk Müller <dmueller@suse.com>
  - update to 0.9.3:
    * roots: don't share a RootFetcher between threads
    * seeker: fix the test for ILP32 platforms
    * reduce memory usage with long-running work items
    * allow BtrfsIoctlLogicalInoArgs to be reused, remove virtual methods
    * create a Pool of BtrfsIoctlLogicalInoArgs objects
  - add avoid-swap.patch to fix build with gcc 13
* Sun Mar 12 2023 Björn Bidar <bjorn.bidar@thaodan.de>
  - Removed patch: fix-Makefile-version.diff, replaced with make parameter.
* Tue Feb 14 2023 Avinesh Kumar <avinesh.kumar@suse.com>
  - update to 0.9.1:
    * Fix the install target.
    * Makefile: also drop fiemap and fiewalk from main Makefile
  - update to 0.9:
    - Highlights:
    * Work around a kernel bug which can be triggered by running the
      LOGICAL_INO ioctl and dedupe on the same extent at the same time.
    * Prevent worker threads from being blocked by extent and inode
      locks.  Defer the blocked item and find something else for that
      worker thread to do.
    * Fix the labelling of threads so they aren't all "task_consumer".
    * Speed up SIGTERM process termination to have a better chance of
      flushing the hash table and crawl state to $BEESHOME before the
      process is killed by a service timeout.
    * Reduce the hash table writeback rate to 128K/s.
    * Reduce the interval between crawl restarts to one transid.
    * Add 'recent' scan mode, which dedupes new data in fully scanned
      subvols instead of waiting for every old subvol to be scanned.
    * Better behavior when there are write errors in $BEESHOME.
    * Drop the unused and obsolete `fiemap` and `fiewalk` binaries.
* Mon Dec 05 2022 Dirk Müller <dmueller@suse.com>
  - update to 0.8:
    * fs: make dedupe work again after a really unfortunate build fix
* Wed Oct 19 2022 dsterba@suse.cz
  - update to 0.7 git 5953ea6d3c5646 (20221025)
  - build fixes
  - Removed patch: 0001-fs-fix-FIEMAP_MAX_OFFSET-type-silliness-in-fiemap.h.patch
* Sun Sep 04 2022 dsterba@suse.cz
  - Added patch: 0001-fs-fix-FIEMAP_MAX_OFFSET-type-silliness-in-fiemap.h.patch
    (fix build on ppc64le)
* Tue Oct 05 2021 dsterba@suse.cz
  - Update to 0.7
    - Highlights:
    * Remove 8-CPU thread limit
    * Add kernel bugs reference table to docs
    * Workarounds for btrfs send and balance issues
    * Reduce the number of temporary inodes created
    * Use posix_fadvise to optimize page cache usage
    * Use private namespace for mounts under systemd
    * Assorted bug fixes and small performance improvements
    * SIGTERM handler to save crawl state, hash table, and exit
    * Higher ref limits per extent on kernels with LOGICAL_INO_V2
    - Build dependency changes:
    * Convert docs to Github Flavored Markdown
    * Updates for new compilers including clang
    * Remove dependencies on libbtrfs-dev and uuid-dev
    * Remove unversioned `libcrucible.so` shared library

Files

/etc/bees
/etc/bees/beesd.conf.sample
/usr/bin/bees
/usr/lib/systemd/system/beesd@.service
/usr/sbin/beesd
/usr/share/doc/packages/bees
/usr/share/doc/packages/bees/README.md
/usr/share/licenses/bees
/usr/share/licenses/bees/COPYING


Generated by rpm2html 1.8.1

Fabrice Bellet, Fri Jul 18 23:36:12 2025