![]() We see in #27387 that a call to `polymorphic_path` will cause duplicate SELECT route calls for each merge request in a milestone. This happens because calling `project.namespace.becomes(Namespace)` will instantiate a new instance of a Namespace for each merge request, which causes a N+1 query on the routes table. This change caches the state of the route by the specific class and ID, which dramatically eliminates duplicate work. |
||
---|---|---|
.. | ||
assets | ||
controllers | ||
finders | ||
helpers | ||
mailers | ||
models | ||
policies | ||
presenters | ||
serializers | ||
services | ||
uploaders | ||
validators | ||
views | ||
workers |