26.11.0 Voyager released
· 7 min read
Changes compared to 26.8.10
NOTICE: Upgrading converts the job database to a new format, which takes about 15 seconds per million jobs on the first start. Older Comet Server versions cannot open the converted job database, including when restoring it from a self-backup (COMET-60760, #6563)
New Features
- Added a PostgreSQL Protected Item type, allowing PostgreSQL databases to be backed up using the
pg_dumptools installed on the device, and restored directly into a PostgreSQL server or recovered as.sqlfiles - Added OAuth 2.0 authentication for sending email via Microsoft 365 and Gmail in the Comet Management Console, using your own Microsoft Entra ID or Google Cloud app registration. Microsoft 365 supports both application and delegated permissions (COMET-59172, COMET-1067, #6487)
- Added the
AdminAdminUserSetAPI, for updating another administrator account's permissions, password and security settings without rewriting the whole server configuration (COMET-2594, COMET-60740, #6495) - Added the
AdminMetaServerConfigGetAndHashandAdminMetaServerConfigGetHashAPIs, and an optionalRequireHashparameter onAdminMetaServerConfigSet, to reject a server configuration update if the configuration changed since it was read (COMET-2594, COMET-60740, #6495)
Enhancements
- Added an OAuth 2.0 option alongside app passwords for the Gmail account email sender in the Comet Management Console (COMET-59172, COMET-1067, #6487)
- Added an optional
TargetOrgIDparameter to theAdminAdminUserDeleteandAdminAdminUserListAPIs, to delete or list administrators in a specific organization (COMET-2594, COMET-60740, #6495) - Improved the security of communication between the Comet Backup background service processes
- Improved logging by the Comet Backup background service on Linux: messages are now written to the systemd journal with their severity, or to syslog on systems without systemd, including Synology (COMET-5115, COMET-5851, #6506)
- Improved restore performance and reduced disk usage by automatically generating sparse holes for zero ranges (COMET-4858, COMET-61064, #6546)
- Added a "Fully allocate restored files (disable sparse files)" option to the Restore dialog of the Comet Management Console and the Comet Backup desktop app, for files that require full allocation such as swap files (COMET-4858, COMET-61064, #6546)
- Significantly improved the performance of job searches on servers with many jobs, including the Recent Activity page, the homepage job widgets and custom job searches in the Comet Management Console, and the job list and job count APIs (COMET-60760, #6563)
- Significantly improved the performance of email reports and email report previews on servers with many jobs (COMET-60760, #6563)
- Reduced the background CPU and disk usage of job log pruning, job log compression, retrying failed jobs and software update campaigns on servers with many jobs (COMET-60760, #6563)
- Significantly improved the performance of archive restores (tar, zip, SquashFS), including archive restores in the browser, especially from Storage Vaults with high latency (COMET-60421, #6570)
- Changed archive restores to skip a small file whose content cannot be read, report it as an error, and continue, instead of stopping the restore (COMET-60421, #6570)
- Significantly improved the performance of in-browser restores in the browser from the Comet Management Console, particularly for low-latency Storage Vaults
Bug Fixes
- Improved the reliability of Office 365 calendar backups by defaulting to the calendarView/delta API with an automatic page-size workaround for a Microsoft Graph pagination bug, and falling back to the events API when a calendar still cannot be listed, so calendars with large numbers of recurring events that previously failed to back up can now complete. Calendar events that lie entirely before October 2020 or after November 2050 are not included while calendarView/delta succeeds
- Office 365 backup jobs now include unchanged calendar events and contacts in the reported job size
- Fixed an issue with Linux backups of Plesk subscription directories skipping root-owned log files in
/var/www/vhosts/<subscription>/logswith a "permission denied" warning (COMET-60339, #6461) - Fixed an issue where a newly entered password or secret could be discarded when saving settings while a different tab of the Settings page was shown in the Comet Management Console (COMET-59172, COMET-1067, #6487)
- Fixed an issue with missing error reporting detail when an OAuth authorization is declined in the Comet Management Console (COMET-59172, COMET-1067, #6487)
- Fixed a cosmetic issue where the "Deliver via" option in the email sender settings of the Comet Management Console appeared blank when email was disabled (COMET-59172, COMET-1067, #6487)
- Fixed an issue where the
AdminAdminUserDeleteAPI could not delete Tenant administrator accounts, and could delete a top-level administrator with the same username instead (COMET-2594, COMET-60740, #6495) - Fixed an issue where the
AdminAdminUserNewAPI reported an internal error instead of a validation error when given an unknown organization ID (COMET-2594, COMET-60740, #6495) - Fixed a problem where jobs that use a Backblaze B2 Storage Vault did not complete. This occurred when B2 was not available (for example, because of a firewall), continuously sent errors, or stopped downloads before the end. Now these jobs try again for a limited time, then stop and show the B2 error (COMET-3767, #6500)
- Fixed an issue where forcing an update of a device's login URL from the Comet Management Console could save an invalid Comet Server URL on the device
- Fixed an issue where a failure to apply login details pushed from Comet Server was not logged by the Comet Backup background service
- Fixed an issue where the Comet Backup background service on Linux could stop, losing any running jobs, after the systemd journal service was stopped and started (COMET-5115, COMET-5851, #6506)
- Fixed an issue where unexpected errors in the Comet Backup background service's dispatcher process were not logged (COMET-5115, COMET-5851, #6506)
- Fixed an issue with generating branded exe installers (COMET-61018, #6510)
- Fixed a security issue with malicious read-only administrator accounts that could attempt to reveal a user's password (COMET-60805, #6527)
- Fixed an issue with cancelling a job to an SMB Storage Vault not taking effect if the server stopped responding (COMET-61118, #6536)
- Fixed an issue with deleting files from an SMB Storage Vault with a connection limit of 1 stalling when the file was in use (COMET-61118, #6536)
- Fixed an issue with an SMB Storage Vault whose path is a file not reporting an error (COMET-61118, #6536)
- Fixed an issue with cancelling a job to a WebDAV Storage Vault not taking effect if the server stopped responding (COMET-61122, #6537)
- Fixed an issue with an interrupted WebDAV directory listing being treated as complete (COMET-61122, #6537)
- Fixed an issue where unlocking a Storage Vault, or the automatic Storage Vault key rotation, could change the Storage Vault's subdirectory to the Storage Template's default layout, leaving it pointing at an empty location
- Fixed an issue where unlocking a Storage Vault stored outside its Storage Template's default layout did not remove its lock files
- Fixed an issue with Microsoft SQL Server restores reporting success before SQL Server had finished restoring the database, which could leave a large database in the RESTORING state (COMET-60517, #6548)
- Fixed an issue with Microsoft SQL Server backup and restore jobs reporting success when the VDI data transfer was aborted or timed out, or when the RESTORE statement failed (COMET-60517, #6548)
- Fixed an issue where a single job whose logs could not be compressed stopped job log compression for all other jobs (COMET-60760, #6563)
- Fixed an issue where the job report page in the Comet Management Console could stop loading if the conflicting job could not be looked up (COMET-60760, #6563)