Remove the orbit_query_in_rails feature flag

What does this MR do and why?

Removes the orbit_query_in_rails flag. It has been on for all of GitLab.com since 2026-10-17 (rollout summary), and on by default since !263232 (merged). Rails now always runs Orbit queries, so the Workhorse Orbit path and the internal redaction callback are deleted.

Changes
  • Rails: render_orbit_query! always uses QueryRunner. QueryRunner.params_for replaces EE::Gitlab::Workhorse.orbit_query_params. POST /api/v4/internal/orbit/redaction is deleted.
  • Workhorse: internal/orbit and its send-data hooks are deleted.
  • Specs: request specs share one QueryRunner stub. New tests cover IP restrictions on redaction.
Self-managed and Dedicated

These instances switch to the Rails path in this release.

  • Each Orbit query holds a Puma thread, because max_io_threads is not set.
  • Rack::Timeout caps a query at 58 s.
  • Query endpoints no longer need a Workhorse JWT.
  • There is no flag to fall back to the Workhorse path. To stop Orbit queries, turn off Orbit for the instance.

References

Screenshots or screen recordings

Not applicable.

How to set up and validate locally

Run an Orbit query in GDK. log/api_json.log shows no call to /api/v4/internal/orbit/redaction.

MR acceptance checklist

Evaluate this MR against the MR acceptance checklist. It helps you analyze changes to reduce risks in quality, performance, reliability, security, and maintainability.

Related to gitlab-org/orbit/knowledge-graph#310 (closed)

Edited by Michael Angelo Rivera

Merge request reports

Loading
Loading