Method: Octopus::Migrator#run_with_octopus

Defined in:
lib/octopus/migration.rb,
lib/octopus/migration.rb

#run_with_octopus(&block) ⇒ Object

Pre RAILS 5.2 Migration methods



100
101
102
103
104
105
106
107
108
# File 'lib/octopus/migration.rb', line 100

def run_with_octopus(&block)
  return run_without_octopus(&block) unless connection.is_a?(Octopus::Proxy)
  shards = migrations.map(&:shards).flatten.map(&:to_s)
  connection.send_queries_to_multiple_shards(shards) do
    run_without_octopus(&block)
  end
  rescue ActiveRecord::UnknownMigrationVersionError => e
    raise unless migrations(true).detect { |m| m.version == e.version }
end