diff options
author | Nick Thomas <nick@gitlab.com> | 2019-03-25 14:29:51 +0000 |
---|---|---|
committer | Nick Thomas <nick@gitlab.com> | 2019-05-06 11:35:03 +0100 |
commit | 8973f32d428ab8961986700700a2bad51fe7d4af (patch) | |
tree | c527841677c6f2a4b2823f0539331d511ad60730 /lib/gitlab/discussions_diff | |
parent | d7eb886b9fd32ad2d0ab7bca9128dbb40e80c0da (diff) | |
download | gitlab-ce-8973f32d428ab8961986700700a2bad51fe7d4af.tar.gz |
Remove cleaned up OIDs from database and cache
Diffstat (limited to 'lib/gitlab/discussions_diff')
-rw-r--r-- | lib/gitlab/discussions_diff/highlight_cache.rb | 13 |
1 files changed, 13 insertions, 0 deletions
diff --git a/lib/gitlab/discussions_diff/highlight_cache.rb b/lib/gitlab/discussions_diff/highlight_cache.rb index 270cfb89488..369c6b87fb4 100644 --- a/lib/gitlab/discussions_diff/highlight_cache.rb +++ b/lib/gitlab/discussions_diff/highlight_cache.rb @@ -52,6 +52,19 @@ module Gitlab end end + # Clears multiple cache keys at once. + # + # raw_keys - An Array of unique cache keys, without namespaces. + # + # It returns the number of cache keys cleared. Ex.: 42 + def clear_multiple(raw_keys) + return [] if raw_keys.empty? + + keys = raw_keys.map { |id| cache_key_for(id) } + + Redis::Cache.with { |redis| redis.del(keys) } + end + def cache_key_for(raw_key) "#{cache_key_prefix}:#{raw_key}" end |