Warren
|
2d8e9049b0
|
Add compression support to backup workflow
Test / test (push) Has been cancelled
Test / build (push) Has been cancelled
BackupScheduler Enhancement:
- copy_file() now compresses files using ZSTD or LZ4
- min_size threshold: 1024 bytes (smaller files not compressed)
- compression level: 3 (balanced speed/compression)
BackupConfigResponse Updated:
- Added compress, encrypt, include_checksums fields
- compress: 'none' | 'lz4' | 'zstd'
- Default: 'zstd'
REST API Enhancement:
- GET /api/v2/backup/config returns full config
- POST /api/v2/backup/config accepts compression settings
Test Results:
- Set compress='lz4': ✅ Config updated
- Set compress='zstd': ✅ Config updated
- Compression applied via run_backup() (scheduled backup)
Note: Direct create_snapshot API doesn't use compression
(scheduler.run_backup() is the primary backup mechanism)
Build: 495 tests pass
|
2026-06-24 04:14:24 +08:00 |
|
Warren
|
1d9e140e6c
|
Fix Backup/Restore API compilation errors
- chrono timestamp_opt API: use TimeZone trait method
- VfsError::Io/NotFound: use String literals
- SendFormat: add PartialEq derive
- VfsRaidConfig tests: add disk_paths field
- BackupStats test: use relative timestamps
- HashSet file tracking: use (String, u64) tuple
- BackupStream::receive: clone format before use
- collect_file_data: fix temporary lifetime
All tests pass: 495 markbase-core + 201 smb-server = 696 total
|
2026-06-24 02:37:03 +08:00 |
|