mirror of
https://github.com/fleetdm/fleet
synced 2026-04-21 21:47:20 +00:00
Mysql has a max of 65535 placeholders in a sql statement. When > 33k title ids are passed to `getPoliciesBySoftwareTitleIDs` this causes a `Prepared statement contains too many placeholders` error. Fixed this by splitting up the query into multiple queries and aggregating the results in memory. https://github.com/fleetdm/fleet/issues/26753 - [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/Committing-Changes.md#changes-files) for more information. - [x] Input data is properly validated, `SELECT *` is avoided, SQL injection is prevented (using placeholders for values in statements) - [x] Added/updated automated tests - [x] A detailed QA plan exists on the associated ticket (if it isn't there, work with the product group's QA engineer to add it) - [x] Manual QA for all new/changed functionality
1 line
No EOL
155 B
Text
1 line
No EOL
155 B
Text
* Fixed an error when requesting /fleet/software/titles endpoint unpaginated with > 33k software titles by batching the policies by software title id query |