module MigrationTimeouts::TimeoutManager
Public Instance Methods
migrate(direction)
click to toggle source
Calls superclass method
# File lib/migration_timeouts/timeout_manager.rb, line 7 def migrate(direction) return super unless direction == :up && !disable_ddl_transaction issue_lock_timeout if lock_timeout_configured? issue_statement_timeout if statement_timeout_configured? super end
Private Instance Methods
issue_lock_timeout()
click to toggle source
# File lib/migration_timeouts/timeout_manager.rb, line 18 def issue_lock_timeout execute "SET LOCAL lock_timeout = #{lock_timeout.in_milliseconds}" end
issue_statement_timeout()
click to toggle source
# File lib/migration_timeouts/timeout_manager.rb, line 22 def issue_statement_timeout execute "SET LOCAL statement_timeout = #{statement_timeout.in_milliseconds}" end
lock_timeout()
click to toggle source
# File lib/migration_timeouts/timeout_manager.rb, line 34 def lock_timeout self.class.lock_timeout_override || MigrationTimeouts.config.default_lock_timeout end
lock_timeout_configured?()
click to toggle source
# File lib/migration_timeouts/timeout_manager.rb, line 26 def lock_timeout_configured? !self.class.lock_timeout_disabled && lock_timeout&.try(:positive?) end
statement_timeout()
click to toggle source
# File lib/migration_timeouts/timeout_manager.rb, line 38 def statement_timeout self.class.statement_timeout_override || MigrationTimeouts.config.default_statement_timeout end
statement_timeout_configured?()
click to toggle source
# File lib/migration_timeouts/timeout_manager.rb, line 30 def statement_timeout_configured? !self.class.statement_timeout_disabled && statement_timeout&.try(:positive?) end