Skip to content

Resolve ReleasesFinder IN Query Performance Issues

What does this MR do and why?

This MR improves ReleasesFinder performance in the group/subgroups case by using InOperatorOptimization when the instance has the :use_traversal_ids feature flag is enabled (along with the FF for this MR, :group_releases_finder_inoperator)

Screenshots or screen recordings

Old Releases Query example on gitlab.com group - 4.651s

https://console.postgres.ai/gitlab/gitlab-production-tunnel-pg12/sessions/9064/commands/32075

New Releases Query example of gitlab.com group w/ :use_traversal_ids feature flag enabled - 46ms

https://postgres.ai/console/gitlab/gitlab-production-tunnel-pg12/sessions/9190/commands/32601

How to set up and validate locally

Numbered steps to set up and validate the change are strongly suggested.

MR acceptance checklist

This checklist encourages us to confirm any changes have been analyzed to reduce risks in quality, performance, reliability, security, and maintainability.

Related to #351703 (closed)

Edited by Allen Cook

Merge request reports