Skip to content

Use separate rate limiter for Users portion of AutocompleteController

Summary

SearchController and AutocompleteController currently use the same rate limit function.

The AutocompleteController should use a different rate limiter than the SearchController because:

  • The controllers are supported by different teams
  • The controllers serve different functions
  • the AutocompleteController does not interact with the search backend

Improvements

The rate limits are competing with one another for functions that are not related. Users could be getting limited by using autocomplete and search when they should be able to use each feature separately.

Risks

There are two related issues which discuss adding Groups and Users to Elasticsearch for use in Global Search and potentially other areas of GitLab. This would create a more complex set of rate limiting that would need to occur here based upon which services are being utilized for the search.

Scope

This particular issue is scoped to Users only since the ownership of the controller spans multiple teams

Edited by Hannah Sutor