Summary
This release is built on backup-go v0.11.0. It adds file logging and tighter configuration validation. absctl also reports finer-grained progress during long-running backups and restores.
New features
- Add
--log-fileto write logs to a file instead ofstderr. Use it with--log-jsonto write JSON log lines.absctlappends to the file and does not rotate it, so configure external rotation and retention for long-running jobs. [BKRS-46]
Improvements
- Disallow using
--continuetogether with--remove-files, because removing files invalidates the saved backup state. [BKRS-71] - Validate
--max-recordsand reject the flag unless--parallelis exactly1. [BKRS-10] - Validate that
--uniqueand--replaceare mutually exclusive on restore. [BKRS-105] - Validate cloud backup
--file-limitagainst chunk size so multipart uploads stay below 10,000 parts. [BKRS-187] - Validate encryption configuration more strictly: require
--encryptwith a key source and allow only one key source. [BKRS-129] - Retrieve additional Aerospike Database connection and cloud-storage parameters from the Aerospike Secret Agent. [BKRS-89]
- Retrieve
--tls-*cluster connection flags from the Aerospike Secret Agent. [BKRS-129] - Rename structured log attributes to kebab-case, including
parallel-read,file-limit, andstate-file-dst. Update log parsers that relied on the previous names. [BKRS-74] - Show backup and restore progress with two decimal places, such as
99.31%, and report it more frequently during long jobs. [BKRS-218] - Increase default cloud upload chunk sizes to 50 MiB for Amazon S3, Google Cloud Storage (GCS), and Azure Blob Storage. Change the default local file buffer to 4 MiB. [BKRS-187]
- Improve scan throttling to limit backup load on the cluster. [BKRS-8]
- Retry transient failures when creating secondary indexes and user-defined functions (UDFs) during restore. [BKRS-145]
- Print backup estimates consistently and show the number of files before a restore starts. [BKRS-190]
- Optimize Amazon S3 backup memory usage. [BKRS-155]
- Optimize restore decoder performance. [BKRS-182]
- Reduce allocations when encoding backup tokens.
- Render duration values in logs as human-readable strings, such as
30sand1m30s, instead of raw nanoseconds. [BKRS-171] - Write service messages to
stderrsostdoutstays clean for piped output. - Remove the misleading chunk-size log message during restore. [BKRS-231]
Bug fixes
- Fix authentication to Google Cloud Storage when running with an attached Google Cloud service account and no key file. [BKRS-40]
- Retry transient errors during large Google Cloud Storage uploads. [BKRS-244]
- Fix a deadlock that could occur during secondary index creation on restore by updating the Aerospike Go client. [BKRS-26]
- Improve encryption key error messages when PEM decoding fails. [BKRS-129]
- Release limiter slots when a backup is canceled so later backups can start. [BKRS-114]
- Change record-count mismatch messages from error to warning severity. [BKRS-156]
- Remove internal client IDs from log messages. [BKRS-148]
Full Changelog: v1.0.0...v1.1.0