diff options
author | Imre Farkas <ifarkas@gitlab.com> | 2019-07-24 11:44:01 +0200 |
---|---|---|
committer | Imre Farkas <ifarkas@gitlab.com> | 2019-08-06 12:15:42 +0200 |
commit | 5ad81f8fba834329cc93ed5b6e7dc51119c1a89f (patch) | |
tree | 204761d5d4d5dfb2f272ada9eeb0530583c2ecd6 | |
parent | 7583f5349ff5d919d6d22b36e59efef1d4a93fb3 (diff) | |
download | gitlab-ce-if-64985-redis_pipelined_in_active_session.tar.gz |
ActiveSession.cleaned_up_lookup_entries to use Redis#pipelinedif-64985-redis_pipelined_in_active_session
-rw-r--r-- | app/models/active_session.rb | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/app/models/active_session.rb b/app/models/active_session.rb index fdd210f0fba..00192b1da59 100644 --- a/app/models/active_session.rb +++ b/app/models/active_session.rb @@ -136,8 +136,10 @@ class ActiveSession # only the single key entries are automatically expired by redis, the # lookup entries in the set need to be removed manually. session_ids_and_entries = session_ids.zip(entries) - session_ids_and_entries.reject { |_session_id, entry| entry }.each do |session_id, _entry| - redis.srem(lookup_key_name(user.id), session_id) + redis.pipelined do + session_ids_and_entries.reject { |_session_id, entry| entry }.each do |session_id, _entry| + redis.srem(lookup_key_name(user.id), session_id) + end end entries.compact |