Skip to content

0.13.0

Pre-release
Pre-release

Choose a tag to compare

@gboudreau gboudreau released this 25 May 20:28
· 196 commits to master since this release
b0856d8

New features

  • New command: greyhole --mv (beta; requires more testing) - Allows you to move data from one Greyhole share to another without copying the data through the Samba shares
  • Detect and fix bitrot/silent errors; requires a new cron job; see near the end of USAGE file Fixes #199
  • New command: greyhole --print-fsck : Print the fsck report for the last completed fsck task. This will print the same content that is sent by email when the --email-report option is used.
  • Refactored FSCK report code; new layout for the 'all shares' fsck that runs weekly

Improvements

  • greyhole-dfree (used by Samba to calculate free space) should take into account the num_copies option of the share; i.e. real free space = 1 GB, num_copies = 4 => available free space on Samba share = 250 MB; also added -h parameter to greyhole-dfree executable Fixes #156
  • Save recent log entries in DB; use that in greyhole --status Fixes #114; Fixes #102
  • Allow restarting Samba & Greyhole when running in Docker
  • Mention allow insecure wide links = yes as an alternative to unix extensions = no in USAGE file Ref: #192

Bugfixes

  • Correctly attribute write/close tasks; using the file handle (fd) was not enough; using the full path now
  • When a write task is logged, and no opened-for-writing task is in the DB, create it! Fixes issue where Greyhole would think a file is closed without being written to, when that is not the case.
  • When two spooled files (created by Samba VFS module) have the exact same modification time (to the microsecond!), ensure they are executed in the correct order: open, writes, close
  • When running --fsck --disk-usage-report, correctly update 'parents' du_stats, when deleting the checked folder's du_stats
  • --iostat was missing storage pool drives on un-numbered partitions (eg. whole-drive XFS partition on /dev/sdb); also added timestamps to output, updates are more frequent (5s instead of 10s), and sorted the storage pool drives in alphabetical order
  • Correctly balance storage pool drives, when drive_selection_groups are configured: will balance the drives in each group amongst themselves only, instead of trying to balance all the drives together. Fixes #198
  • greyhole --process-spool logged warnings because Metastore backups config was uninitialized
  • If the Samba VFS symlink is missing/not working, and the expected target is also missing, download it from Github
  • greyhole --logs should not watch both .log and .err, as .log will always contains all the same logs as .err
  • Install script: ensure gnupg package is installed; it is required for apt-get add Fixes #227
  • build_vfs script: try to install the required dependencies, before trying to build Ref: #223
  • lsof file-locked check was not working in Docker (Alpine Linux), because -M flag is not available

Various code improvement & refactoring

  • Removing old files; shellcheck; fixed white-space in shell scripts (was a mix of tabs and spaces)
  • Updated .patch to Samba 4.11 & 4.12 VFS module (was not working on Alpine 3.11 & Alpine Edge - 3.12)
  • WIP: VFS module for Samba 4.13 (untested)
  • Simplified manual INSTALL instructions about Samba VFS module; just need the correct binary in the LIB dir; daemon will take care of created the required symlink pointing there
  • Moved build-related files into build/ sub-directory
  • Create new Docker images during build
  • Faster re-building Samba VFS modules, on build servers