Class: SidekiqUniqueJobs::Orphans::LuaReaper

Inherits:
Reaper
  • Object
show all
Defined in:
lib/sidekiq_unique_jobs/orphans/lua_reaper.rb

Overview

Note:

this is a much slower version of the lua script but does not crash redis

Class DeleteOrphans provides deletion of orphaned digests

Author:

Constant Summary

Constants inherited from Reaper

Reaper::REAPERS

Instance Attribute Summary

Attributes inherited from Reaper

#conn

Instance Method Summary collapse

Methods inherited from Reaper

call, #config, #initialize, #reaper, #reaper_count, #reaper_timeout

Methods included from JSON

dump_json, load_json, safe_load_json

Methods included from Logging

#build_message, included, #log_debug, #log_error, #log_fatal, #log_info, #log_warn, #logger, #logging_context, #with_configured_loggers_context, #with_logging_context

Methods included from Script::Caller

call_script, debug_lua, do_call, extract_args, max_history, normalize_argv, now_f, redis_version

Methods included from Connection

included, #redis

Constructor Details

This class inherits a constructor from SidekiqUniqueJobs::Orphans::Reaper

Instance Method Details

#callInteger

Delete orphaned digests

Returns:

  • (Integer)

    the number of reaped locks



19
20
21
22
23
24
25
26
# File 'lib/sidekiq_unique_jobs/orphans/lua_reaper.rb', line 19

def call
  call_script(
    :reap_orphans,
    conn,
    keys: [DIGESTS, EXPIRING_DIGESTS, SCHEDULE, RETRY, PROCESSES],
    argv: [reaper_count, (Time.now - reaper_timeout).to_f],
  )
end