redis_queued_locks 1.22.0 → 1.23.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (40) hide show
  1. checksums.yaml +4 -4
  2. data/.claude/project-overview.md +88 -36
  3. data/.claude/rules/acquirer.md +11 -7
  4. data/.claude/rules/arguments.md +2 -2
  5. data/.claude/rules/logic.md +5 -4
  6. data/.claude/rules/tests.md +4 -4
  7. data/.claude/rules/type-checking.md +2 -3
  8. data/.claude/rules/visitors.md +8 -6
  9. data/.claude/skills/rql-code-review/SKILL.md +25 -20
  10. data/.ruby-version +1 -1
  11. data/CHANGELOG.md +24 -1
  12. data/CLAUDE.md +5 -4
  13. data/README.md +247 -96
  14. data/lib/redis_queued_locks/acquirer/acquire_lock/dequeue_from_lock_queue.rb +4 -4
  15. data/lib/redis_queued_locks/acquirer/acquire_lock/try_to_lock.rb +582 -276
  16. data/lib/redis_queued_locks/acquirer/acquire_lock.rb +26 -26
  17. data/lib/redis_queued_locks/acquirer/extend_lock_ttl.rb +13 -13
  18. data/lib/redis_queued_locks/acquirer/lock_series/instr_visitor.rb +243 -0
  19. data/lib/redis_queued_locks/acquirer/lock_series/log_visitor.rb +472 -0
  20. data/lib/redis_queued_locks/acquirer/lock_series/release_lock_series.rb +181 -0
  21. data/lib/redis_queued_locks/acquirer/lock_series/try_to_lock_series.rb +1051 -0
  22. data/lib/redis_queued_locks/acquirer/lock_series.rb +948 -0
  23. data/lib/redis_queued_locks/acquirer.rb +1 -1
  24. data/lib/redis_queued_locks/client.rb +55 -25
  25. data/lib/redis_queued_locks/version.rb +2 -2
  26. data/redis_queued_locks.gemspec +21 -14
  27. data/sig/redis_queued_locks/acquirer/acquire_lock/dequeue_from_lock_queue.rbs +1 -1
  28. data/sig/redis_queued_locks/acquirer/acquire_lock/try_to_lock.rbs +106 -5
  29. data/sig/redis_queued_locks/acquirer/acquire_lock.rbs +1 -1
  30. data/sig/redis_queued_locks/acquirer/extend_lock_ttl.rbs +2 -2
  31. data/sig/redis_queued_locks/acquirer/lock_series/instr_visitor.rbs +102 -0
  32. data/sig/redis_queued_locks/acquirer/lock_series/log_visitor.rbs +154 -0
  33. data/sig/redis_queued_locks/acquirer/lock_series/release_lock_series.rbs +37 -0
  34. data/sig/redis_queued_locks/acquirer/lock_series/try_to_lock_series.rbs +198 -0
  35. data/sig/redis_queued_locks/acquirer/lock_series.rbs +106 -0
  36. data/sig/redis_queued_locks/client.rbs +70 -3
  37. metadata +32 -11
  38. data/lib/redis_queued_locks/acquirer/lock_series_poc/instr_visitor.rb +0 -61
  39. data/lib/redis_queued_locks/acquirer/lock_series_poc/log_visitor.rb +0 -104
  40. data/lib/redis_queued_locks/acquirer/lock_series_poc.rb +0 -513
@@ -9,7 +9,7 @@ module RedisQueuedLocks::Acquirer::AcquireLock::DequeueFromLockQueue
9
9
  # @param redis [RedisClient]
10
10
  # @param logger [::Logger,#debug]
11
11
  # @param lock_key [String]
12
- # @param read_write_mode [Symbol]
12
+ # @param rw_mode [Symbol]
13
13
  # @param lock_key_queue [String] Queue of write lock requests.
14
14
  # @param read_lock_key_queue [String] Queue of read lock requests.
15
15
  # @param queue_ttl [Integer]
@@ -27,7 +27,7 @@ module RedisQueuedLocks::Acquirer::AcquireLock::DequeueFromLockQueue
27
27
  redis,
28
28
  logger,
29
29
  lock_key,
30
- read_write_mode,
30
+ rw_mode,
31
31
  lock_key_queue,
32
32
  read_lock_key_queue,
33
33
  queue_ttl,
@@ -38,14 +38,14 @@ module RedisQueuedLocks::Acquirer::AcquireLock::DequeueFromLockQueue
38
38
  instr_sampled
39
39
  )
40
40
  # NOTE: the request lives in the queue of the requested mode
41
- request_queue = (read_write_mode == :read) ? read_lock_key_queue : lock_key_queue
41
+ request_queue = (rw_mode == :read) ? read_lock_key_queue : lock_key_queue
42
42
 
43
43
  # @type var result: Integer
44
44
  result = redis.call('ZREM', request_queue, acquirer_id)
45
45
 
46
46
  LogVisitor.dequeue_from_lock_queue(
47
47
  logger, log_sampled,
48
- lock_key, queue_ttl, acquirer_id, host_id, access_strategy, read_write_mode
48
+ lock_key, queue_ttl, acquirer_id, host_id, access_strategy, rw_mode
49
49
  )
50
50
 
51
51
  { ok: true, result: result }