fleet/server/datastore
Konstantin Sykulev 997adcebe0
Batched getPoliciesBySoftwareTitleIDs (#27062)
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
2025-03-12 14:48:52 -05:00
..
cached_mysql Enable staticcheck Go linter. (#23487) 2024-11-05 11:16:24 -06:00
filesystem Added signed URLs (#25197) 2025-01-09 12:56:54 -06:00
mysql Batched getPoliciesBySoftwareTitleIDs (#27062) 2025-03-12 14:48:52 -05:00
mysqlredis Support matching a host in orbit enrollment using the serial number (#9612) 2023-02-28 12:55:04 -05:00
redis Updating golangci-lint to 1.61.0 (#22973) 2024-10-18 12:38:26 -05:00
s3 Remove unused code (from Fleet's sandbox implementation) (#26645) 2025-02-27 17:37:56 -03:00