From 650f40865e5d8136cb366fbde689c4100aafb0c5 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Kamil=20Trzci=C5=84ski?= Date: Mon, 8 Apr 2019 15:33:36 +0200 Subject: Forbid the use of `#reload` and prefer `#reset` The `#reload` makes to load all objects into memory, and the main purpose of `#reload` is to drop the association cache. The `#reset` seems to solve exactly that case. --- app/models/merge_request_diff.rb | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) (limited to 'app/models/merge_request_diff.rb') diff --git a/app/models/merge_request_diff.rb b/app/models/merge_request_diff.rb index ac8d3b98266..0b787217410 100644 --- a/app/models/merge_request_diff.rb +++ b/app/models/merge_request_diff.rb @@ -387,7 +387,7 @@ class MergeRequestDiff < ApplicationRecord save! end - merge_request_diff_files.reload + merge_request_diff_files.reset end private @@ -541,10 +541,10 @@ class MergeRequestDiff < ApplicationRecord def save_commits MergeRequestDiffCommit.create_bulk(self.id, compare.commits.reverse) - # merge_request_diff_commits.reload is preferred way to reload associated + # merge_request_diff_commits.reset is preferred way to reload associated # objects but it returns cached result for some reason in this case # we can circumvent that by specifying that we need an uncached reload - commits = self.class.uncached { merge_request_diff_commits.reload } + commits = self.class.uncached { merge_request_diff_commits.reset } self.commits_count = commits.size end -- cgit v1.2.3