Multiple Bug Fixes across MSSQL, SMB, Retention, and Storage Adapters
๐ Bug Fixes
- mssql: Fixed backup abort and missing remote cleanup when SSH-transferring more than ~10 databases due to SSH channel exhaustion - the SFTP session is now cached and reused instead of opening a new channel per operation.
- mssql: Fixed "Arithmetic overflow" crash in Database Explorer and Restore for databases larger than ~2 GB.
- smb: Fixed
.connection-test-*probe files not being deleted whensendFilethrows after the remote file was already created. - retention: Fixed SMART/GFS tier overlap that incorrectly mapped multiple tiers to the same backup, causing over-aggressive deletion. (#101)
- storage: Fixed file descriptor leak causing deleted
.tartemp files to hold disk blocks until container restart, affecting S3, SFTP, FTP, OneDrive, and tar-utils streams. (#100)
๐จ Improvements
- retention: Corrected the retention algorithm abbreviation from "GVS" to "GFS" across UI, documentation, and the built-in retention template.
- history: Retention execution logs now include the applied retention template name.
๐งช Tests
- smb: Added unit tests for
finally-block cleanup whensendFilethrows and for cleanup retry when the delete itself fails. - retention: Added regression tests for GFS non-overlapping tier selection and template-name visibility in retention history. (#101)
- ftp/sftp: Fixed broken upload unit tests by adding missing
destroy: vi.fn()to thecreateReadStreammock - the adapter callsfileStream.destroy()in thefinallyblock, which threw a TypeError without this mock method.
๐ณ Docker
- Image:
skyfay/dbackup:v2.4.1 - Also tagged as:
latest,v2 - CI Image:
skyfay/dbackup:ci - Platforms: linux/amd64, linux/arm64