Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Clear list of "Unavailable Migrations" (Symfony 3)

Tags:

php

symfony

There are some migrations, that was deleted, and left at the list of "Unavailable Migrations". How can I clear it, because every time notice message annoy a little bit. My guess is

migrations:doctrine:version

console

like image 384
Viktor Sydorenko Avatar asked Apr 25 '17 09:04

Viktor Sydorenko


2 Answers

Whenever the bundle reports executed unavailable migrations it means that there are migration identifiers in the migrations_versions database table from when you previously ran it.

To get rid of the notification, make sure that when you delete a migration file, delete its corresponding identifier from the database table.

You can do this with (or manually):

php bin/console doctrine:migrations:version YYYYMMDDHHMMSS --delete

Or, rewind the migration with:

php bin/console doctrine:migrations:execute YYYYMMDDHHMMSS --down

but this will run the down function of that migration file undoing whatever it set and remove it from the database.

like image 180
DevDonkey Avatar answered Sep 20 '22 13:09

DevDonkey


I have tried

php bin/console doctrine migrations:version YYYYMMDDHHMMSS --delete

and

php bin/console doctrine:migrations:execute YYYYMMDDHHMMSS --down

but it works only if we actually have migration.

enter image description here

I asked about situation when migration is deleted. But thanks DevDonkey for information about migration_versions table.

My solution is, to run

php bin/console doctrine:migrations:status --show-versions

and see enter image description here

And delete from migration_versions these rows.

like image 26
Viktor Sydorenko Avatar answered Sep 18 '22 13:09

Viktor Sydorenko