anjlab/rails-data-migrations

Issue with `data:migrate:down` Rake-task

Opened this issue · 2 comments

Hi, I have noticed that there is a problem with rolling back a data migration.

Scenario:

  • create a migration
  • run it
  • rolled back with the command rake data:migrate:down VERSION=...
  • run it again with the command rake data:migrate:up VERSION=

Expected result - a migration is applied without errors
Actual result - a migration is applied but it fails with error SQLite3::ConstraintException: UNIQUE constraint failed: data_migrations.version.

As far as I understand Rake-task data:migrate:down should remove a version of the rolled-back migration in the data_migrations table. But it doesn't. That's why when this migration is applied again and data:migrate:up tries to add a new row in the data_migrations table - conflicts with the unique constraint and fails.

Hi,

I've got the same problem there.

@andrykonchin, did you find a solution to your issue?

Nope. The only solution is to fix the bug. It looks trivial.