summaryrefslogtreecommitdiff
path: root/changelogs
diff options
context:
space:
mode:
authorSean McGivern <sean@gitlab.com>2017-11-07 14:00:21 +0000
committerSean McGivern <sean@gitlab.com>2017-11-07 16:26:55 +0000
commit4d4ddb6004e6f7f56b337a49c6eedaad70d70862 (patch)
treec211bad025f8250f224f395a2f5687d71791cb13 /changelogs
parentdc1e6b436268c00bd1fdf3d15597a4656e029b95 (diff)
downloadgitlab-ce-4d4ddb6004e6f7f56b337a49c6eedaad70d70862.tar.gz
Fail when issuable_meta_data is called on an unlimited collectionfix-issues-api-list-performance
This method can be called with an array, or a relation: 1. Arrays always have a limited amount of values, so that's fine. 2. If the relation does not have a limit value applied, then we will load every single object in that collection, and prevent N+1 queries for the metadata for that. But that's wrong, because we should never call this without an explicit limit set. So we raise in that case, and this commit will see which specs fail. The only failing specs here were the issues API specs, and the specs for IssuableMetadata itself, and both have been addressed.
Diffstat (limited to 'changelogs')
-rw-r--r--changelogs/unreleased/fix-issues-api-list-performance.yml5
1 files changed, 5 insertions, 0 deletions
diff --git a/changelogs/unreleased/fix-issues-api-list-performance.yml b/changelogs/unreleased/fix-issues-api-list-performance.yml
new file mode 100644
index 00000000000..9c180f4d55e
--- /dev/null
+++ b/changelogs/unreleased/fix-issues-api-list-performance.yml
@@ -0,0 +1,5 @@
+---
+title: Speed up issues list APIs
+merge_request:
+author:
+type: performance