debian-mirror-gitlab/lib/gitlab/utils/batch_loader.rb

Ignoring revisions in .git-blame-ignore-revs. Click here to bypass and see the normal blame view.

24 lines
728 B
Ruby
Raw Normal View History

2022-08-27 11:52:29 +05:30
# frozen_string_literal: true
module Gitlab
module Utils
module BatchLoader
# Clears batched items under the specified batch key
# https://github.com/exAspArk/batch-loader#batch-key
def self.clear_key(batch_key)
return if ::BatchLoader::Executor.current.nil?
items_to_clear = ::BatchLoader::Executor.current.items_by_block.select do |k, v|
# The Hash key here is [source_location, batch_key], so we just check k[1]
k[1] == batch_key
end
items_to_clear.each do |k, v|
::BatchLoader::Executor.current.items_by_block.delete(k)
::BatchLoader::Executor.current.loaded_values_by_block.delete(k)
end
end
end
end
end