Releases: aerospike/aerospike-backup-service
v3.3.1
This release includes an update to backup-go v0.7.0, updated Helm charts, fixes for some minor issues, and improvements to restore resilience. Refer to the library release notes for full details on upstream fixes and other functional changes.
Improvements
- Updated Helm charts. [APPS-1448]
- Improved retry logic for restore errors. [APPS-1912]
Fixes
- Fixed a bug that caused estimated time for restores to still appear after the restore finished by @korotkov-aerospike in [#433].[APPS-1914]
Maintenance
Full Changelog: v3.3.0...v3.3.1
v3.3.0
Features
- APPS-1855 Introduce configuration property for parallel write by @korotkov-aerospike in #421
Fixes
- APPS-1808 Fix commit hash logging by @korotkov-aerospike in #404
- APPS-1642 Fix api-docs endpoint redirect by @korotkov-aerospike in #405
- APPS-1809 Fix backup retention policy application by @korotkov-aerospike in #410
- APPS-1800 Set time boundaries for restore jobs with no records by @korotkov-aerospike in #411
- Fix misprint in secrets configuration example by @korotkov-aerospike in #412
- APPS-1821 Fix race condition in apply config endpoint by @korotkov-aerospike in #414
- APPS-1823 Fix full backup skip counter by @korotkov-aerospike in #413
- APPS-1854 Pass prefer rack property to library by @korotkov-aerospike in #420
- APPS-1876 Skip missing routines when reading backups by @korotkov-aerospike in #427
- Ensure proper deserialization of Rate in HTTPServerConfig DTO by @reugn in #429
- APPS-1893 Prevent retention cleanup during restore by @korotkov-aerospike in #428
Improvements
- FMWK-788 Update to new bandwidth limiter by @filkeith in #409
- Use exact trigger timestamps in backup jobs by @korotkov-aerospike in #407
- APPS-1805 Improve TLS validation by @korotkov-aerospike in #415
- APPS-1839 Check all nodes for emptiness by @korotkov-aerospike in #419
- APPS-1872 Print logs on routine schedule by @korotkov-aerospike in #423
- APPS-1856 Use backup library client for info requests by @korotkov-aerospike in #422
Maintenance
- Set minimal permissions in GitHub workflows by @reugn in #403
- Update version to 3.2.0 in readme by @korotkov-aerospike in #402
- Enhance and stabilize service release workflows by @davi17g in #406
- Add
sloglint
linter by @korotkov-aerospike in #408 - Remove unused StorageConfig from RestoreTimestampRequest DTO by @korotkov-aerospike in #416
- Update go-quartz to 0.15.1 by @korotkov-aerospike in #417
- APPS-1837 Add quartz cron format description by @korotkov-aerospike in #418
- Add install and uninstall targets to Makefile by @davi17g in #424
- Fix determining Go version in pre-release workflow by @davi17g in #425
- DOCS-3674 Fix partition list example by @korotkov-aerospike in #426
- Version 3.3.0 release by @korotkov-aerospike in #430
Full Changelog: v3.2.0...v3.3.0
v3.2.0
Features
- APPS-1712 Add endpoint to query restore jobs details by @korotkov-aerospike in #373
- APPS-1651 Add min part size property to Azure and GCP by @korotkov-aerospike in #364
- APPS-1728 Mask sensitive data in logs by @korotkov-aerospike in #379
- APPS-1692 Improve backup metrics by @korotkov-aerospike in #376
- APPS-1726 Use non-root user in the Docker container by @davi17g in #374
- APPS-1786 Make namespaces field of backup routine required by @korotkov-aerospike in #394
Fixes
- APPS-1610 Add finalizer to close GCP client by @reugn in #365
- Fix promotion to DockerHub in the release workflow by @davi17g in #367
- APPS-1647 Fix error code for config not found by @korotkov-aerospike in #368
- APPS-1744 Fix for incompatible execution on RHEL/Rocky8 by @davi17g in #383
- APPS-1738 Skip concurrent full backups by @korotkov-aerospike in #384
- APPS-1751 Rework restore cancellation to fix race condition by @korotkov-aerospike in #385
- APPS-1766 Fix counter for incremental backup by @korotkov-aerospike in #388
- Fix configuration property names in Helm chart by @davi17g in #395
- APPS-1794 Fix memory leak issue on restore operation by @filkeith in #399
- APPS-1796 Skip empty backups on restore by @korotkov-aerospike in #400
Improvements
- APPS-1721 Add missing OpenAPI schema descriptions by @korotkov-aerospike in #375
- APPS-1727 Improve secret agent configuration validation by @korotkov-aerospike in #378
- APPS-1725 Improve restore request timestamp validation by @korotkov-aerospike in #377
- APPS-1710 Decouple validate and DTO packages from internal schema by @korotkov-aerospike in #366
- APPS-1654 Add more robust storage retry strategy by @korotkov-aerospike in #382
- APPS-1771 Add validation for min-part-size fields by @korotkov-aerospike in #389
- APPS-1724 Rework TLS configuration by @korotkov-aerospike in #381
- APPS-1778 Fix bandwidth validation by @korotkov-aerospike in #390
- APPS-1780 Fix validation for records per second by @korotkov-aerospike in #391
- APPS-1779 Enforce and validate minimum bandwidth by @korotkov-aerospike in #393
- Add more validation rules and enumeration definitions by @korotkov-aerospike in #396
- APPS-1791 Improve error handling for empty backup restore by @korotkov-aerospike in #397
Maintenance
- Automate metrics section generation in README by @korotkov-aerospike in #370
- APPS-1697 Clarify documentation for restore by timestamp by @korotkov-aerospike in #372
- APPS-1694 Describe progress metrics by @korotkov-aerospike in #371
- Proofread OpenAPI specification by @alex-thomas-aerospike in #369
- APPS-1709 Improve readme style and clarity by @alex-thomas-aerospike in #363
- APPS-1721 Add service config description to README.MD by @korotkov-aerospike in #380
- APPS-1760 Set default values in documentation by @korotkov-aerospike in #387
- APPS-1754 Improve and automate DTO documentation by @korotkov-aerospike in #386
- Use Alpine as base Docker image; update GH workflows by @davi17g in #392
- Update readme for version 3.2.0 release by @korotkov-aerospike in #398
- Set version to 3.2.0 by @korotkov-aerospike in #401
Full Changelog: v3.1.0...v3.2.0
v3.1.0
New Features
- Add flag to allow concurrent incremental backups. [APPS-1607]
- Support filter by partition. [APPS-1613]
- Add configuration option to skip backup of cluster configuration. [APPS-1599]
- Add support for specifying object storage classes (for all supported storage providers). [APPS-1503]
Improvements
- Use segmentio/asm/base64 for faster base64 encoding/decoding. [FMWK-735]
- Optimize memory usage during encoding. [FMWK-731]
- Add configurable chunk size option to S3 writer. [FMWK-742]
- Optimize restore to empty databases. [APPS-1369]
- Optimize storage last-backup query. [APPS-1536]
- Optimize number estimation of backup records. [FMWK-741]
- Enhance backup statistics with additional fields. [APPS-1370]
- Add config JSON schema to allow autocomplete and real-time validation. [APPS-1667]
- Expose backup and restore velocity metrics (KB per second and records per second). [APPS-1344]
- Add doubt counter for errors. [APPS-1552]
- Implement strict validation for unsupported fields. [APPS-1532]
- Add HTTP request logging middleware. [APPS-1466]
- Add Backup Service Helm chart. [APPS-1457]
- Allow configuration referencing in the restore endpoint. [APPS-1307]
- Make backup and restore policies optional. [APPS-1343]
Bug Fixes
- Fix several conversion bugs. [APPS-1622]
- Improve restore-path validation. [APPS-1549]
- Remove incomplete backup data properly in case of failure. [APPS-1593]
- Set default socket timeout. [APPS-1553]
Maintenance
- Cache GCP and Azure clients. [APPS-1533]
- Update
golangci-lint
to 2.1.5. [APPS-1652] - Update
aerospike-management-lib
to 1.7.0. [APPS-1551] - Refactor backup backend. [APPS-1555]
- Rename
s3_log_level
andmin_part_size
properties and add Tagliatelle linter. [APPS-1456]
v3.0.1
New in this version
This is a patch release that adds minor internal features.
New features
- Added a default socket timeout of 10 minutes.
- Added an error checking statistic for restore operations.
Full Changelog: v3.0.0...v3.0.1
v3.0.0
Version 3.0.0: Major Release
Introducing significant new features and improvements. This release also includes configuration breaking changes. Refer to the README for detailed v2 to v3 migration instructions.
What's Changed
- APPS-1285 Update module path to v2 by @reugn in #228
- Add support for the extra-ttl configuration in restore by @filkeith in #229
- APPS-1283 Introduce DTO layer by @korotkov-aerospike in #230
- APPS-1298 Make
s3-endpoint-override
field optional by @korotkov-aerospike in #231 - Fix promote image to Docker Hub workflow by @davi17g in #232
⚠️ APPS-1235 Split Storage into LocalStorage and S3Storage by @korotkov-aerospike in #233- Check go.mod in the build workflow by @reugn in #234
- Refactor storage logic by @korotkov-aerospike in #235
- APPS-1279 Support GCP storage by @korotkov-aerospike in #236
- APPS-1303 Export Backup and Restore metrics by @korotkov-aerospike in #238
- Improve error handling in configuration manager by @korotkov-aerospike in #240
- APPS-1299 Add Azure Blob Storage support by @korotkov-aerospike in #239
- Ignore S3 endpoint override field when it's an empty string by @korotkov-aerospike in #242
- APPS-1308 Update Apply config endpoint by @korotkov-aerospike in #243
- Add version branches to the GitHub workflows by @reugn in #246
- APPS-1268 Validate backup/restore namespace exists by @korotkov-aerospike in #244
- APPS-1325 Delete failed backups by @korotkov-aerospike in #247
- APPS-1321 Add support for configuring Aerospike cluster password in Secret Agent by @korotkov-aerospike in #248
- Refactor routine handler infrastructure by @korotkov-aerospike in #251
- APPS-1329 Fix azure marker bug by @filkeith in #252
- APPS-1333 Handle namespace backup retries individually by @korotkov-aerospike in #254
- APPS-1335 Don't save namespace handler if it fails to start by @korotkov-aerospike in #255
⚠️ APPS-1334 Reuse RetryPolicy in BackupPolicy by @korotkov-aerospike in #256- APPS-1338 Fix nil dereference on backup reading by @korotkov-aerospike in #259
- Update docker-compose by @davi17g in #257
- APPS-1336 Add NodeList configuration property to BackupRoutine by @korotkov-aerospike in #258
⚠️ APPS-1352 Rename SecretAgents configuration property yaml tag by @korotkov-aerospike in #263- APPS-1340 Provide full path when retrieving backups using StartAfter by @korotkov-aerospike in #262
- APPS-1345 Round time to millis by @korotkov-aerospike in #261
- APPS-1351 Last backup run field optimization by @korotkov-aerospike in #264
- APPS-1355 Set From time for incremental backups by @korotkov-aerospike in #266
- APPS-1350 Handle static config changes in backup service configuration by @korotkov-aerospike in #268
- Add storage root folder prefix to
startAfter
flag by @korotkov-aerospike in #270 - APPS-1354 Relax storage configuration validation for GCP and Azure by @korotkov-aerospike in #267
- APPS-1362 Handle empty backup properly by @korotkov-aerospike in #271
- APPS-1359 Use link to secret agent in AerospikeCluster by @korotkov-aerospike in #273
- APPS-1349 Review and update default configuration values by @korotkov-aerospike in #269
- APPS-1353 Missing PK in restored records by @korotkov-aerospike in #272
- APPS-1364 Add support for default Azure auth credentials by @filkeith in #276
- APPS-1365 Expose config and requests validation for external use by @korotkov-aerospike in #277
- Initialize service configuration with default values by @korotkov-aerospike in #278
- APPS-1378 Make
dto
pkg compatible for external use by @korotkov-aerospike in #279 - APPS-1366 Support Secret Agent keys for S3 credentials configuration by @korotkov-aerospike in #280
- APPS-1383 Support Secret Agent keys for GCP and Azure credentials configuration by @korotkov-aerospike in #281
- APPS-1342 Add REST endpoint for cancelling restore jobs by @korotkov-aerospike in #282
- APPS-1397 Add cancel current backup endpoint by @korotkov-aerospike in #284
- APPS-1398 Introduce routine status property and endpoints to manage it by @korotkov-aerospike in #285
- APPS-1412 Default values for server and logger by @korotkov-aerospike in #286
⚠️ APPS-1367 Add support for backup retention configuration by @korotkov-aerospike in #287- Automate README example generation by @korotkov-aerospike in #289
⚠️ APPS-1400 Remove EXTERNAL_INSECURE auth mode by @korotkov-aerospike in #290- APPS-1417 Respect scheduled full backup timing by @korotkov-aerospike in #291
- Use backup-go library version 0.3.1 by @korotkov-aerospike in #292
- APPS-1375 Set v3 version suffix in the module path by @korotkov-aerospike in #293
- Update documentation for v3 new features by @korotkov-aerospike in #296
- APPS-1431 Synchronize access to the service configuration by @korotkov-aerospike in #295
- APPS-1436 Add static fields validation in update config handler by @korotkov-aerospike in #299
- APPS-1433 Fix Docker build for arm64 by @davi17g in #297
- APPS-1440 Synchronize access to metadata files and backup job by @korotkov-aerospike in #300
- Allow customization of base Docker image locations by @davi17g in #301
- Address data synchronization issues by @korotkov-aerospike in #302
- Rework client manager caching and synchronization by @korotkov-aerospike in #304
- Use granular locks in client manager by @korotkov-aerospike in #305
- Release: v3.0.0 by @davi17g in #306
Full Changelog: v2.0.0...v3.0.0
v2.0.1
v2.0.0
Version 2.0.0
incorporates a significant architecture redesign due to the transition to the native backup-go library.
What's Changed
- Fix storage type in docker compose file by @reugn in #192
- APPS-1214 Close client after info command by @korotkov-aerospike in #191
⚠️ APPS-1274 Replace C backup library with native Go by @korotkov-aerospike in #216- APPS-1237 Add secret agent support by @filkeith in #200
- APPS-1243 Improve list backups performance by @korotkov-aerospike in #202
- APPS-1248 Add estimate time to restore by @korotkov-aerospike in #205
- APPS-1257 Refactor API handlers by @filkeith in #207
- APPS-1258 Refactor the service package by @reugn in #209
- Remove beta language from readme by @alex-thomas-aerospike in #204
⚠️ APPS-1260 Rename main module by @filkeith in #217⚠️ APPS-1234 Use hyphens in TLS config key names by @reugn in #218⚠️ APPS-1262 Remove NoBins and MaxRecords properties by @korotkov-aerospike in #219- APPS-1276 Move HTTP server timeout to configuration by @filkeith in #220
- Reuse Aerospike client in fetch namespaces request by @korotkov-aerospike in #221
- Regenerate OpenAPI spec for HTTP server timeout property by @korotkov-aerospike in #222
- APPS-1275 Implement retry logic in restore operation by @korotkov-aerospike in #223
- APPS-1278 Update dependencies by @reugn in #224
- Increase scheduler outdated threshold by @korotkov-aerospike in #226
- Release: v2.0.0 by @davi17g in #227
Full Changelog: 1.0.0...v2.0.0
1.0.0
Description & Highlights
- Initial General Availability (GA) release.
What's Changed
- APPS-1189 Improve the release GitHub Action workflow by @davi17g in #182
- APPS-1192 Add xz compression type by @davi17g in #183
- Fix config mount-point in docker-compose file by @davi17g in #184
- APPS-1199 Rename Prometheus metrics by @reugn in #185
- APPS-1196 Create promote to Docker Hub action by @davi17g in #186
- APPS-1204 Use string for storage type by @korotkov-aerospike in #187
- AT-APPS-1205 describe flags by @alex-thomas-aerospike in #188
- Fix deb GPG singing by @davi17g in #190
Full Changelog: 0.3.0...1.0.0
Asset | Supported Distributions |
---|---|
aerospike-backup-service-1.0.0-1.el8.aarch64.rpm |
rhel8 |
aerospike-backup-service-1.0.0-1.el8.x86_64.rpm |
rhel8 |
aerospike-backup-service-1.0.0-1.el9.aarch64.rpm |
rhel9 ,amzn2023 |
aerospike-backup-service-1.0.0-1.el9.x86_64.rpm |
rhel9 ,amzn2023 |
aerospike-backup-service_1.0.0-1_amd64.deb |
ubuntu22.04 ,debian12 |
aerospike-backup-service_1.0.0-1_arm64.deb |
ubuntu22.04 ,debian12 |
0.3.0 Beta
What's Changed
- APPS-1074 Refactor log extractor. by @korotkov-aerospike in #163
- APPS-1099 Run backup on startup if it was skipped. by @korotkov-aerospike in #164
- Add a nightly build workflow for packages. by @davi17g in #166
- AT-DOCS-2336 Update readme. by @alex-thomas-aerospike in #165
- APPS-1173 Apply updated config without service restart. by @korotkov-aerospike in #170
- AT-DOCS-2368 Update readme and add examples. by @alex-thomas-aerospike in #169
- APPS-1174 Support remote (S3) configuration. by @korotkov-aerospike in #171
- APPS-1177 Retry read password. by @korotkov-aerospike in #173
- APPS-1176 Do not store default values when updating configuration file. by @reugn in #172
- Add default value to the logger CaptureShared configuration property. by @reugn in #174
- APPS-1181 Fix read password from credentials. by @korotkov-aerospike in #175
- APPS-1184 Fix remote configuration. by @korotkov-aerospike in #177
- AT-DOCS-2395 Add known issues section. by @alex-thomas-aerospike in #176
- APPS-1167 Backup Aerospike cluster configuration. by @korotkov-aerospike in #167
- Update coverage ignore list. by @reugn in #178
- Set version 0.3.0. by @reugn in #179
- Improve test coverage and fix warnings. by @korotkov-aerospike in #180
- Fix deb build by @davi17g in #181
New Contributors
- @alex-thomas-aerospike made their first contribution in #165
Full Changelog: 0.2.0...0.3.0
Asset | Supported Distributions |
---|---|
aerospike-backup-service-0.3.0-1.el8.aarch64.rpm |
rhel8 |
aerospike-backup-service-0.3.0-1.el8.x86_64.rpm |
rhel8 |
aerospike-backup-service-0.3.0-1.el9.aarch64.rpm |
rhel9 ,amzn2023 |
aerospike-backup-service-0.3.0-1.el9.x86_64.rpm |
rhel9 ,amzn2023 |
aerospike-backup-service_0.3.0-1_amd64.deb |
ubuntu22.04 ,debian12 |
aerospike-backup-service_0.3.0-1_arm64.deb |
ubuntu22.04 ,debian12 |