mirror of
https://github.com/dkam/suo.git
synced 2025-01-29 07:42:43 +00:00
properly throw lock LockClientError
This commit is contained in:
@@ -1,6 +1,7 @@
|
||||
module Suo
|
||||
module Client
|
||||
class Base
|
||||
|
||||
DEFAULT_OPTIONS = {
|
||||
retry_timeout: 0.1,
|
||||
retry_delay: 0.01,
|
||||
@@ -111,7 +112,7 @@ module Suo
|
||||
break unless acquisition_lock
|
||||
break if set(key, serialize_locks(locks), cas, options)
|
||||
end
|
||||
rescue FailedToAcquireLock => _ # rubocop:disable Lint/HandleExceptions
|
||||
rescue LockClientError => _ # rubocop:disable Lint/HandleExceptions
|
||||
# ignore - assume success due to optimistic locking
|
||||
end
|
||||
|
||||
@@ -163,7 +164,7 @@ module Suo
|
||||
sleep(rand(options[:retry_delay] * 1000).to_f / 1000)
|
||||
end
|
||||
rescue => _
|
||||
raise FailedToAcquireLock
|
||||
raise LockClientError
|
||||
end
|
||||
|
||||
def serialize_locks(locks)
|
||||
|
||||
@@ -1,7 +0,0 @@
|
||||
module Suo
|
||||
module Client
|
||||
module Errors
|
||||
class FailedToAcquireLock < StandardError; end
|
||||
end
|
||||
end
|
||||
end
|
||||
@@ -8,7 +8,7 @@ require "redis"
|
||||
|
||||
require "msgpack"
|
||||
|
||||
require "suo/client/errors"
|
||||
require "suo/errors"
|
||||
require "suo/client/base"
|
||||
require "suo/client/memcached"
|
||||
require "suo/client/redis"
|
||||
|
||||
3
lib/suo/errors.rb
Normal file
3
lib/suo/errors.rb
Normal file
@@ -0,0 +1,3 @@
|
||||
module Suo
|
||||
class LockClientError < StandardError; end
|
||||
end
|
||||
Reference in New Issue
Block a user