class Nandi::TimeoutPolicies::Concurrent
Attributes
migration[RW]
Public Class Methods
new(migration)
click to toggle source
# File lib/nandi/timeout_policies/concurrent.rb, line 16 def initialize(migration) @migration = migration end
validate(migration)
click to toggle source
# File lib/nandi/timeout_policies/concurrent.rb, line 12 def self.validate(migration) new(migration).validate end
Public Instance Methods
validate()
click to toggle source
# File lib/nandi/timeout_policies/concurrent.rb, line 20 def validate collect_errors( validate_statement_timeout, validate_lock_timeout, ) end
Private Instance Methods
lock_timeout_high_enough()
click to toggle source
# File lib/nandi/timeout_policies/concurrent.rb, line 51 def lock_timeout_high_enough migration.lock_timeout >= minimum_lock_timeout end
minimum_lock_timeout()
click to toggle source
# File lib/nandi/timeout_policies/concurrent.rb, line 55 def minimum_lock_timeout Nandi.config.concurrent_lock_timeout_limit end
minimum_statement_timeout()
click to toggle source
# File lib/nandi/timeout_policies/concurrent.rb, line 59 def minimum_statement_timeout Nandi.config.concurrent_statement_timeout_limit end
statement_timeout_high_enough()
click to toggle source
# File lib/nandi/timeout_policies/concurrent.rb, line 47 def statement_timeout_high_enough migration.statement_timeout >= minimum_statement_timeout end
validate_lock_timeout()
click to toggle source
# File lib/nandi/timeout_policies/concurrent.rb, line 39 def validate_lock_timeout assert( migration.disable_lock_timeout? || lock_timeout_high_enough, "lock timeout for concurrent operations "\ "must be at least #{minimum_lock_timeout}", ) end
validate_statement_timeout()
click to toggle source
# File lib/nandi/timeout_policies/concurrent.rb, line 31 def validate_statement_timeout assert( migration.disable_statement_timeout? || statement_timeout_high_enough, "statement timeout for concurrent operations "\ "must be at least #{minimum_statement_timeout}", ) end