mirror of
https://github.com/fleetdm/fleet
synced 2026-04-21 21:47:20 +00:00
Fixes #31432 - Added campaign target cleanup: Deletes targets from campaigns completed >24h ago. Uses 10% or 50k min per run, processes in 10k batches. Added DB index, integrated into hourly cron, includes tests. # Checklist for submitter If some of the following don't apply, delete the relevant line. - [x] Changes file added for user-visible changes in `changes/`, `orbit/changes/` or `ee/fleetd-chrome/changes`. See [Changes files](https://github.com/fleetdm/fleet/blob/main/docs/Contributing/guides/committing-changes.md#changes-files) for more information. ## Testing - [x] Added/updated automated tests - [x] Where appropriate, [automated tests simulate multiple hosts and test for host isolation](https://github.com/fleetdm/fleet/blob/main/docs/Contributing/reference/patterns-backend.md#unit-testing) (updates to one hosts's records do not affect another) - [x] QA'd all new/changed functionality manually <!-- This is an auto-generated comment: release notes by coderabbit.ai --> ## Summary by CodeRabbit - New Features - Automatic cleanup of live query campaign targets 24 hours after campaign completion to reduce clutter and storage usage. - Chores - Added a database index to speed up live query target operations for improved performance at scale. - Enhanced scheduled maintenance to log cleanup counts and execution time for better observability. <!-- end of auto-generated comment: release notes by coderabbit.ai -->
3 lines
629 B
Text
3 lines
629 B
Text
* Added clean up of live query campaign targets 24 hours after campaign completion. This keeps the DB size in check for performance of large and frequent live query campaigns.
|
|
* Added index to distributed_query_campaign_targets table to speed up DB performance for live queries.
|
|
> **Warning:** For deployments with millions of rows in `distributed_query_campaign_targets`, the database migration to add the index may take significant time. We recommend testing migration duration in a staging environment first. The initial cleanup of old campaign targets will occur progressively over multiple hours to avoid database overload.
|