-
Couldn't load subscription status.
- Fork 14
Description
As of the initial alpha release with Ecto 3 support, 624bffb, we have limited support for lock_for_migrations/4 - lock_for_migrations/4 is a @callback that was implemented in Ecto 3 for Ecto.Adapter.Migration, but its full implementation was not critical to making the upgrade from Ecto 2 to Ecto 3 support.
At the moment, we raise in the event that a user calls this method while having provided a configuration option for :migration_lock:
@impl Ecto.Adapter.Migration
def lock_for_migrations(%{opts: adapter_opts} = _meta, query, _opts, callback) do
# TODO - consider adding support for this?
if Keyword.get(adapter_opts, :migration_lock) do
raise "#{inspect __MODULE__}.lock_for_migrations error: #{inspect __MODULE__} does not currently support migration table lock; please remove the :migration_lock option from your repo configuration or set it to nil"
else
callback.(query)
end
end
Is Ecto's concept of lock_for_migrations something that is conceptually appropriate to adapt for use in DynamoDB? If so, it should be addressed; otherwise, continuing to raise in the event that a user has provided a :migration_lock option is probably fine.