gitlab-org--gitlab-foss/changelogs/unreleased/sh-optimize-duplicate-routable-full-path.yml
Stan Hu a0edaa9210 Cache Routable#full_path in RequestStore to reduce duplicate route loads
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.
2017-04-24 06:43:24 -07:00

4 lines
107 B
YAML

---
title: Cache Routable#full_path in RequestStore to reduce duplicate route loads
merge_request:
author: