BigW Consortium Gitlab
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.
Name |
Last commit
|
Last update |
---|---|---|
.. | ||
access_requestable_spec.rb | Loading commit data... | |
awardable_spec.rb | Loading commit data... | |
cache_markdown_field_spec.rb | Loading commit data... | |
case_sensitivity_spec.rb | Loading commit data... | |
discussion_on_diff_spec.rb | Loading commit data... | |
expirable_spec.rb | Loading commit data... | |
faster_cache_keys_spec.rb | Loading commit data... | |
has_status_spec.rb | Loading commit data... | |
ignorable_column_spec.rb | Loading commit data... | |
issuable_spec.rb | Loading commit data... | |
mentionable_spec.rb | Loading commit data... | |
milestoneish_spec.rb | Loading commit data... | |
noteable_spec.rb | Loading commit data... | |
participable_spec.rb | Loading commit data... | |
presentable_spec.rb | Loading commit data... | |
project_features_compatibility_spec.rb | Loading commit data... | |
reactive_caching_spec.rb | Loading commit data... | |
relative_positioning_spec.rb | Loading commit data... | |
resolvable_discussion_spec.rb | Loading commit data... | |
resolvable_note_spec.rb | Loading commit data... | |
routable_spec.rb | Loading commit data... | |
spammable_spec.rb | Loading commit data... | |
strip_attribute_spec.rb | Loading commit data... | |
subscribable_spec.rb | Loading commit data... | |
token_authenticatable_spec.rb | Loading commit data... | |
uniquify_spec.rb | Loading commit data... |