Skip to content

Releases: PlusOne/dbbackup

v3.42.38 - Fix TUI verify panic

14 Jan 16:22

Choose a tag to compare

Bug Fix

  • Fix panic in TUI backup manager verify: Added nil checks before logger calls in diagnose.go and safety.go to prevent crash when pressing 'v' to verify backup in interactive menu

Downloads

Platform Binary
Linux 64-bit (Intel/AMD) dbbackup_linux_amd64
Linux 64-bit (ARM) dbbackup_linux_arm64
Linux 32-bit (ARMv7) dbbackup_linux_arm_armv7
macOS 64-bit (Intel) dbbackup_darwin_amd64
macOS 64-bit (Apple Silicon) dbbackup_darwin_arm64
Windows 64-bit (Intel/AMD) dbbackup_windows_amd64.exe
Windows 64-bit (ARM) dbbackup_windows_arm64.exe
FreeBSD 64-bit dbbackup_freebsd_amd64
OpenBSD 64-bit dbbackup_openbsd_amd64
NetBSD 64-bit dbbackup_netbsd_amd64

v3.42.37 - Cleaner Diagnose View

14 Jan 16:08

Choose a tag to compare

Cleaner Diagnose Output

Removed ASCII box drawing characters for a cleaner look:

[STATUS] Validation
  [OK] VALID - Archive passed all checks

[INFO] Details
  [+] PostgreSQL SQL header found
  [+] All COPY blocks properly terminated

Section Prefixes

  • [STATUS] - Validation result
  • [INFO] - Details
  • [FAIL] - Errors
  • [WARN] - Warnings
  • [HINT] - Recommendations

v3.42.36 - TUI Prefix Fixes (Complete)

14 Jan 16:02

Choose a tag to compare

TUI Prefix Consistency Fixes

Completed standardization of all TUI section prefixes:

Changes

  • diagnose_view.go: Added [STATS], [LIST], [INFO] section prefixes
  • status.go: Added [CONN], [INFO] section prefixes
  • settings.go: [LOG][INFO] for configuration summary
  • menu.go: [DB][SELECT]/[CHECK] for selectors

Prefix Convention

Prefix Usage
[CHECK] Verification, diagnosis, previews
[STATS] Statistics, status, summaries
[SELECT] Selection/browser screens
[EXEC] Execution screens
[CONFIG] Settings/configuration
[INFO] Information sections
[LIST] List sections
[CONN] Connection status

Downloads

Pre-built binaries for all major platforms.

v3.42.35 - Standardized TUI Prefixes

14 Jan 15:40

Choose a tag to compare

TUI Consistency Improvements

Standardized all title prefixes across the TUI for better user experience:

Prefix Usage
[CHECK] Diagnosis, previews, validations
[STATS] Status, history, metrics views
[SELECT] Selection/browsing screens
[EXEC] Execution screens (backup/restore)
[CONFIG] Settings/configuration

Files Updated

  • diagnose_view.go: [SEARCH][CHECK]
  • settings.go: [CFG][CONFIG]
  • menu.go: Cleaned main menu title
  • history.go: [HISTORY][STATS]
  • backup_manager.go: [DB][SELECT]
  • archive_browser.go: [PKG]/[SEARCH][SELECT]
  • restore_preview.go: Added [CHECK]
  • restore_exec.go: [RESTORE][EXEC]

Downloads

Pre-built binaries for all major platforms included.

v3.42.34 - Library Enhancements

14 Jan 15:27

Choose a tag to compare

🚀 Library Enhancement Release (v3.42.30 - v3.42.34)

This release integrates 7 high-quality Go libraries for improved reliability, cross-platform support, and testability.

✨ New Libraries Integrated

Version Library Purpose
v3.42.29 shirou/gopsutil/v3 Cross-platform system metrics (RAM, CPU)
v3.42.29 dustin/go-humanize Human-readable formatting (bytes, numbers)
v3.42.30 hashicorp/go-multierror Error aggregation for cluster restores
v3.42.31 schollz/progressbar/v3 Visual progress bars for cloud operations
v3.42.32 fatih/color Cross-platform terminal colors (Windows support)
v3.42.33 cenkalti/backoff/v4 Exponential backoff retry for cloud uploads
v3.42.34 spf13/afero Filesystem abstraction for testing

🔧 Key Improvements

  • Better error reporting - All cluster restore failures shown with full context
  • Visual progress - Real-time download/upload progress with ETA and speed
  • Automatic retry - Cloud operations retry on transient failures (timeout, rate limit)
  • Windows colors - Native Windows console color support
  • Testable filesystem - In-memory filesystem for unit tests

📦 Binaries

Pre-built binaries for 10 platforms:

  • Linux (amd64, arm64, armv7)
  • macOS (Intel, Apple Silicon)
  • Windows (amd64, arm64)
  • FreeBSD, OpenBSD, NetBSD (amd64)

v3.42.29: Cross-platform preflight checks

14 Jan 14:53

Choose a tag to compare

v3.42.28: Comprehensive preflight checks

14 Jan 14:34

Choose a tag to compare

v3.42.27: Auto-tune PostgreSQL for large restores

14 Jan 14:10

Choose a tag to compare

v3.42.26: Fix lock exhaustion OOM on BLOB restore

14 Jan 07:19

Choose a tag to compare

🛠️ Bug Fixes

Phased Restore for BLOB Databases

Fixes critical out of shared memory / max_locks_per_transaction OOM errors during restore of databases containing large objects (BLOBs).

What Changed:

  • Auto-detect large objects in pg_restore dumps
  • Split restore into 3 phases: pre-data → data → post-data
  • Each phase commits and releases locks before next phase
  • Prevents lock table exhaustion on long-running restores

Root Cause:
PostgreSQL accumulates locks during restore. With many BLOBs, the lock table (max_locks_per_transaction × max_connections) fills up after hours of restore, causing OOM.

Workaround (if upgrading not possible):
Increase max_locks_per_transaction = 1024 in postgresql.conf and restart PostgreSQL.

📦 Downloads

Platform Binary
Linux x64 dbbackup_linux_amd64
Linux ARM64 dbbackup_linux_arm64
macOS Intel dbbackup_darwin_amd64
macOS Apple Silicon dbbackup_darwin_arm64
Windows x64 dbbackup_windows_amd64.exe

v3.42.25 - Streaming tar verification for large cluster archives

13 Jan 13:44

Choose a tag to compare

Bug Fix

Fixed false 'Dump is CORRUPTED' errors on large cluster archives (100GB+)

Changes

  • Increased timeout from 60 to 180 minutes for very large archives
  • Use streaming pipes instead of buffering entire tar listing in memory
  • Only mark as corrupted for clear corruption signals (unexpected EOF, invalid gzip)
  • Prevents false CORRUPTED errors on valid large archives

Downloads

Select the appropriate binary for your platform.