Releases: PlusOne/dbbackup
Releases · PlusOne/dbbackup
v6.50.28: Extended Test Coverage (31.5% avg)
04 Mar 19:34
Compare
Sorry, something went wrong.
No results found
v6.50.28: Extended Test Coverage (31.5% avg)
Added
7 additional test files covering cloud URI methods, engine version helpers, native restore modes, TOC serialization edge cases, fs pure functions, progress formatters, config validation
Coverage improvements : engine/native 13.4%→14.2%, fs 15.5%→20.0%, progress 37.5%→40.8%, config 67.0%→69.2%, cloud 31.8%→32.7%, engine 16.3%→17.4%
Overall average coverage : 18.5% → 31.5% across 53 packages
Downloads
Platform
Architecture
Binary
Linux
x86_64 (Intel/AMD)
dbbackup_linux_amd64
Linux
x86_64 AVX2-optimized (2015+ CPU)
dbbackup_linux_amd64_v3
Linux
ARM64
dbbackup_linux_arm64
Linux
ARMv7
dbbackup_linux_arm_armv7
macOS
Intel
dbbackup_darwin_amd64
macOS
Apple Silicon (M1/M2)
dbbackup_darwin_arm64
Verify Downloads
Installation
# Linux x86_64
curl -LO https://github.com/PlusOne/dbbackup/releases/download/v6.50.28/dbbackup_linux_amd64
chmod +x dbbackup_linux_amd64 && sudo mv dbbackup_linux_amd64 /usr/local/bin/dbbackup
# macOS Apple Silicon
curl -LO https://github.com/PlusOne/dbbackup/releases/download/v6.50.28/dbbackup_darwin_arm64
chmod +x dbbackup_darwin_arm64 && sudo mv dbbackup_darwin_arm64 /usr/local/bin/dbbackup
v6.50.27 — Unit Test Coverage Expansion
04 Mar 18:51
Compare
Sorry, something went wrong.
No results found
Unit Test Coverage Expansion
7 new test files (1,862 lines) covering pure/deterministic functions across 5 packages:
Package
Before
After
notify
22%
44.2%
dedup
5.4%
23.6%
pitr
13.5%
21.3%
performance
29.3%
36.6%
wal
9.5%
11.8%
All tests pass on Go 1.24.0 and PostgreSQL 18.2.
v6.50.24: Fix pipe race condition in globals backup, Enterprise section
25 Feb 12:57
Compare
Sorry, something went wrong.
No results found
v6.50.24: Fix pipe race condition in globals backup, Enterprise section
Fixed
Pipe race condition in globals backup — cmd.Wait() closes the stdout pipe; if io.ReadAll() hasn't finished reading, it crashes with read |0: file already closed. Fixed by draining the pipe completely BEFORE calling Wait(). Affected both backupGlobals (PostgreSQL/pg_dumpall) and backupMySQLGlobals (mysqldump). Triggered on mysql01 where mysqldump exits quickly due to LOCK TABLES warning on ejabberd database.
Added
Enterprise & Consulting section in README — UUXO background, service offerings (backup strategy, DR planning, deployment, support contracts, training), contact info
Changed
License section clarified — Apache 2.0, explicitly free for everyone including enterprises
Downloads
Platform
Architecture
Binary
Linux
x86_64 (Intel/AMD)
dbbackup_linux_amd64
Linux
x86_64 AVX2-optimized (2015+ CPU)
dbbackup_linux_amd64_v3
Linux
ARM64
dbbackup_linux_arm64
Linux
ARMv7
dbbackup_linux_arm_armv7
macOS
Intel
dbbackup_darwin_amd64
macOS
Apple Silicon (M1/M2)
dbbackup_darwin_arm64
Verify Downloads
Installation
# Linux x86_64
curl -LO https://github.com/PlusOne/dbbackup/releases/download/v6.50.24/dbbackup_linux_amd64
chmod +x dbbackup_linux_amd64 && sudo mv dbbackup_linux_amd64 /usr/local/bin/dbbackup
# macOS Apple Silicon
curl -LO https://github.com/PlusOne/dbbackup/releases/download/v6.50.24/dbbackup_darwin_arm64
chmod +x dbbackup_darwin_arm64 && sudo mv dbbackup_darwin_arm64 /usr/local/bin/dbbackup
v6.50.23: SFTP cloud storage backend
25 Feb 11:37
Compare
Sorry, something went wrong.
No results found
v6.50.23: SFTP cloud storage backend
Added
internal/cloud/sftp.go (NEW) — SFTPBackend implementing cloud.Backend interface for remote backup-to-server via SSH/SFTP
Upload() — Streaming upload with auto-mkdir on remote, retry, bandwidth throttling, progress tracking
Download() — Streaming download with context cancellation, bandwidth throttling
List() — sftp.ReadDir() with prefix filtering, skips directories
Delete() — sftp.Remove() with path prefix
Exists() / GetSize() — sftp.Stat() with os.IsNotExist() handling
Lazy SSH+SFTP connection (first operation triggers connect)
SSH auth chain: explicit key → default keys (~/.ssh/id_ed25519, id_rsa, id_ecdsa) → password
Host key verification via known_hosts or --sftp-insecure to skip
internal/cloud/sftp_test.go (NEW) — Unit tests: validation, buildFilePath, parseSFTPEndpoint, buildSSHAuthMethods, buildHostKeyCallback
CLI flags : --sftp-key (DBBACKUP_SFTP_KEY), --sftp-key-passphrase, --sftp-password, --sftp-known-hosts, --sftp-insecure on all cloud commands
URI schema : sftp://user@host:port/path (e.g., sftp://backup@nas.local/mnt/backups)
Config persistence : sftp_key, sftp_key_passphrase, sftp_password, sftp_known_hosts, sftp_insecure in [cloud] section of .dbbackup.conf
Changed
internal/cloud/interface.go — Added SFTPKeyPath, SFTPKeyPassphrase, SFTPPassword, SFTPKnownHostsPath, SFTPInsecure to Config; "sftp" case in NewBackend() factory; Validate() skips bucket requirement for sftp provider
internal/cloud/uri.go — sftp:// in validProviders, IsCloudURI(), SFTP-specific parsing (user@host:port from URI userinfo+host, path as prefix)
internal/config/config.go — Added CloudSFTP* fields
internal/config/persist.go — LocalConfig extended, load/save/apply for SFTP fields
cmd/cloud.go — SFTP flags, getCloudBackend() wiring, bucket validation skip for sftp
internal/backup/engine.go — uploadToCloud() now passes HMAC and SFTP config fields to cloud.Config (was missing for both)
Notes
7th cloud provider — purely additive, no breaking changes to existing S3/MinIO/B2/Azure/GCS/HMAC backends
Only requires SSH credentials — no S3/NFS/SMB infrastructure needed
Dependency added: github.com/pkg/sftp v1.13.10 (uses existing golang.org/x/crypto/ssh)
Downloads
Platform
Architecture
Binary
Linux
x86_64 (Intel/AMD)
dbbackup_linux_amd64
Linux
x86_64 AVX2-optimized (2015+ CPU)
dbbackup_linux_amd64_v3
Linux
ARM64
dbbackup_linux_arm64
Linux
ARMv7
dbbackup_linux_arm_armv7
macOS
Intel
dbbackup_darwin_amd64
macOS
Apple Silicon (M1/M2)
dbbackup_darwin_arm64
Verify Downloads
Installation
# Linux x86_64
curl -LO https://github.com/PlusOne/dbbackup/releases/download/v6.50.23/dbbackup_linux_amd64
chmod +x dbbackup_linux_amd64 && sudo mv dbbackup_linux_amd64 /usr/local/bin/dbbackup
# macOS Apple Silicon
curl -LO https://github.com/PlusOne/dbbackup/releases/download/v6.50.23/dbbackup_darwin_arm64
chmod +x dbbackup_darwin_arm64 && sudo mv dbbackup_darwin_arm64 /usr/local/bin/dbbackup
v6.50.22: Systemd catalog fix, Prometheus exporter fix, docs overhaul
25 Feb 10:37
Compare
Sorry, something went wrong.
No results found
v6.50.22: Systemd catalog fix, Prometheus exporter fix, docs overhaul
Downloads
Platform
Architecture
Binary
Linux
x86_64 (Intel/AMD)
dbbackup_linux_amd64
Linux
x86_64 AVX2-optimized (2015+ CPU)
dbbackup_linux_amd64_v3
Linux
ARM64
dbbackup_linux_arm64
Linux
ARMv7
dbbackup_linux_arm_armv7
macOS
Intel
dbbackup_darwin_amd64
macOS
Apple Silicon (M1/M2)
dbbackup_darwin_arm64
Verify Downloads
Installation
# Linux x86_64
curl -LO https://github.com/PlusOne/dbbackup/releases/download/v6.50.22/dbbackup_linux_amd64
curl -LO https://github.com/PlusOne/dbbackup/releases/download/v6.50.22/SHA256SUMS
sha256sum -c SHA256SUMS --ignore-missing
chmod +x dbbackup_linux_amd64
sudo mv dbbackup_linux_amd64 /usr/local/bin/dbbackup
# macOS Apple Silicon
curl -LO https://github.com/PlusOne/dbbackup/releases/download/v6.50.22/dbbackup_darwin_arm64
chmod +x dbbackup_darwin_arm64
sudo mv dbbackup_darwin_arm64 /usr/local/bin/dbbackup
v6.50.21: HMAC file server backend (Phase 1) — self-hosted cloud storage with HMAC-SHA256 auth
24 Feb 19:55
Compare
Sorry, something went wrong.
No results found
v6.50.21: HMAC file server backend (Phase 1) — self-hosted cloud storage with HMAC-SHA256 auth
Downloads
Platform
Architecture
Binary
Linux
x86_64 (Intel/AMD)
dbbackup_linux_amd64
Linux
x86_64 AVX2-optimized (2015+ CPU)
dbbackup_linux_amd64_v3
Linux
ARM64
dbbackup_linux_arm64
Linux
ARMv7
dbbackup_linux_arm_armv7
macOS
Intel
dbbackup_darwin_amd64
macOS
Apple Silicon (M1/M2)
dbbackup_darwin_arm64
Installation
# Linux x86_64
curl -LO https://github.com/PlusOne/dbbackup/releases/download/v6.50.21/dbbackup_linux_amd64
chmod +x dbbackup_linux_amd64
sudo mv dbbackup_linux_amd64 /usr/local/bin/dbbackup
# macOS Apple Silicon
curl -LO https://github.com/PlusOne/dbbackup/releases/download/v6.50.21/dbbackup_darwin_arm64
chmod +x dbbackup_darwin_arm64
sudo mv dbbackup_darwin_arm64 /usr/local/bin/dbbackup
v6.50.20: Test coverage sprint: 155 new unit tests for database, backup, restore packages
24 Feb 19:36
Compare
Sorry, something went wrong.
No results found
v6.50.20: Test coverage sprint: 155 new unit tests for database, backup, restore packages
Downloads
Platform
Architecture
Binary
Linux
x86_64 (Intel/AMD)
dbbackup_linux_amd64
Linux
x86_64 AVX2-optimized (2015+ CPU)
dbbackup_linux_amd64_v3
Linux
ARM64
dbbackup_linux_arm64
Linux
ARMv7
dbbackup_linux_arm_armv7
macOS
Intel
dbbackup_darwin_amd64
macOS
Apple Silicon (M1/M2)
dbbackup_darwin_arm64
Installation
# Linux x86_64
curl -LO https://github.com/PlusOne/dbbackup/releases/download/v6.50.20/dbbackup_linux_amd64
chmod +x dbbackup_linux_amd64
sudo mv dbbackup_linux_amd64 /usr/local/bin/dbbackup
# macOS Apple Silicon
curl -LO https://github.com/PlusOne/dbbackup/releases/download/v6.50.20/dbbackup_darwin_arm64
chmod +x dbbackup_darwin_arm64
sudo mv dbbackup_darwin_arm64 /usr/local/bin/dbbackup
v6.50.19: Tool validation consolidation, --engine flag, legacy cleanup
24 Feb 19:04
Compare
Sorry, something went wrong.
No results found
v6.50.19: Tool validation consolidation, --engine flag, legacy cleanup
Downloads
Platform
Architecture
Binary
Linux
x86_64 (Intel/AMD)
dbbackup_linux_amd64
Linux
x86_64 AVX2-optimized (2015+ CPU)
dbbackup_linux_amd64_v3
Linux
ARM64
dbbackup_linux_arm64
Linux
ARMv7
dbbackup_linux_arm_armv7
macOS
Intel
dbbackup_darwin_amd64
macOS
Apple Silicon (M1/M2)
dbbackup_darwin_arm64
Installation
# Linux x86_64
curl -LO https://github.com/PlusOne/dbbackup/releases/download/v6.50.19/dbbackup_linux_amd64
chmod +x dbbackup_linux_amd64
sudo mv dbbackup_linux_amd64 /usr/local/bin/dbbackup
# macOS Apple Silicon
curl -LO https://github.com/PlusOne/dbbackup/releases/download/v6.50.19/dbbackup_darwin_arm64
chmod +x dbbackup_darwin_arm64
sudo mv dbbackup_darwin_arm64 /usr/local/bin/dbbackup
v6.50.18: MySQL PITR binlog filtering, pitr mysql-restore command, performance benchmarks
24 Feb 18:29
Compare
Sorry, something went wrong.
No results found
v6.50.18: MySQL PITR binlog filtering, pitr mysql-restore command, performance benchmarks
Downloads
Platform
Architecture
Binary
Linux
x86_64 (Intel/AMD)
dbbackup_linux_amd64
Linux
x86_64 AVX2-optimized (2015+ CPU)
dbbackup_linux_amd64_v3
Linux
ARM64
dbbackup_linux_arm64
Linux
ARMv7
dbbackup_linux_arm_armv7
macOS
Intel
dbbackup_darwin_amd64
macOS
Apple Silicon (M1/M2)
dbbackup_darwin_arm64
Installation
# Linux x86_64
curl -LO https://github.com/PlusOne/dbbackup/releases/download/v6.50.18/dbbackup_linux_amd64
chmod +x dbbackup_linux_amd64
sudo mv dbbackup_linux_amd64 /usr/local/bin/dbbackup
# macOS Apple Silicon
curl -LO https://github.com/PlusOne/dbbackup/releases/download/v6.50.18/dbbackup_darwin_arm64
chmod +x dbbackup_darwin_arm64
sudo mv dbbackup_darwin_arm64 /usr/local/bin/dbbackup
v6.50.17: Refactor engine.go — split into 7 focused modules
24 Feb 15:04
Compare
Sorry, something went wrong.
No results found
Split internal/restore/engine.go (3,855 lines) into 7 focused files. Purely organizational refactoring — no functional changes, no renamed functions, no signature changes. Test coverage unchanged at 20.1%.
New files:
engine_util.go — Utility functions
engine_exec.go — Command execution, decompression pipeline
engine_tuning.go — PostgreSQL server tuning
engine_mysql.go — MySQL restore methods
engine_postgresql.go — PostgreSQL restore methods
engine_cluster.go — Cluster restore, globals, metadata