Skip to content

Migrations conflict with Yii's m130524_201442_init #81

@TrueXakeP

Description

@TrueXakeP

After installing yii-app-advanced, edit configs, setup database and ./yii migrate I install user-management. But when I do
./yii migrate --migrationPath=vendor/webvimark/module-user-management/migrations/
I got first error:

......
*** applying m140809_072112_insert_superadmin_to_user
Exception: Setting unknown property: webvimark\modules\UserManagement\models\User::superadmin (C:\Users\root\Documents\PHPProj\emenu\vendor\yiisoft\yii2\base\Component.php:197)
#0 C:\Users\root\Documents\PHPProj\emenu\vendor\yiisoft\yii2\db\BaseActiveRecord.php(267): yii\base\Component->__set('superadmin', 1)
#1 C:\Users\root\Documents\PHPProj\emenu\vendor\webvimark\module-user-management\migrations\m140809_072112_insert_superadmin_to_user.php(12): yii\db\BaseActiveRecord->__set('supera
dmin', 1)
#2 C:\Users\root\Documents\PHPProj\emenu\vendor\yiisoft\yii2\db\Migration.php(93): m140809_072112_insert_superadmin_to_user->safeUp()
#3 C:\Users\root\Documents\PHPProj\emenu\vendor\yiisoft\yii2\console\controllers\BaseMigrateController.php(492): yii\db\Migration->up()
#4 C:\Users\root\Documents\PHPProj\emenu\vendor\yiisoft\yii2\console\controllers\BaseMigrateController.php(129): yii\console\controllers\BaseMigrateController->migrateUp('m140809_0
72112_...')
#5 [internal function]: yii\console\controllers\BaseMigrateController->actionUp(0)
#6 C:\Users\root\Documents\PHPProj\emenu\vendor\yiisoft\yii2\base\InlineAction.php(55): call_user_func_array(Array, Array)
#7 C:\Users\root\Documents\PHPProj\emenu\vendor\yiisoft\yii2\base\Controller.php(151): yii\base\InlineAction->runWithParams(Array)
#8 C:\Users\root\Documents\PHPProj\emenu\vendor\yiisoft\yii2\console\Controller.php(91): yii\base\Controller->runAction('', Array)
#9 C:\Users\root\Documents\PHPProj\emenu\vendor\yiisoft\yii2\base\Module.php(455): yii\console\Controller->runAction('', Array)
#10 C:\Users\root\Documents\PHPProj\emenu\vendor\yiisoft\yii2\console\Application.php(167): yii\base\Module->runAction('migrate', Array)
#11 C:\Users\root\Documents\PHPProj\emenu\vendor\yiisoft\yii2\console\Application.php(143): yii\console\Application->runAction('migrate', Array)
#12 C:\Users\root\Documents\PHPProj\emenu\vendor\yiisoft\yii2\base\Application.php(375): yii\console\Application->handleRequest(Object(yii\console\Request))
#13 C:\Users\root\Documents\PHPProj\emenu\yii(27): yii\base\Application->run()
#14 {main}
*** failed to apply m140809_072112_insert_superadmin_to_user (time: 0.014s)


Migration failed. The rest of the migrations are canceled.

Ok, try to revert them all with
./yii migrate/down 3 --migrationPath=vendor/webvimark/module-user-management/migrations/
and ./yii migrate/down and...

Yii Migration Tool (based on Yii v2.0.6)

Total 1 migration to be reverted:
        m130524_201442_init

Revert the above migration? (yes|no) [no]:yes
*** reverting m130524_201442_init
    > drop table {{%user}} ...Exception 'yii\db\Exception' with message 'SQLSTATE[42S02]: Base table or view not found: 1051 Unknown table 'emenu.user'
The SQL being executed was: DROP TABLE `user`'

in C:\Users\root\Documents\PHPProj\emenu\vendor\yiisoft\yii2\db\Schema.php:628

Error Info:
Array
(
    [0] => 42S02
    [1] => 1051
    [2] => Unknown table 'emenu.user'
)

Stack trace:
#0 C:\Users\root\Documents\PHPProj\emenu\vendor\yiisoft\yii2\db\Command.php(791): yii\db\Schema->convertException(Object(PDOException), 'DROP TABLE `use...')
#1 C:\Users\root\Documents\PHPProj\emenu\vendor\yiisoft\yii2\db\Migration.php(285): yii\db\Command->execute()
#2 C:\Users\root\Documents\PHPProj\emenu\console\migrations\m130524_201442_init.php(32): yii\db\Migration->dropTable('{{%user}}')
#3 C:\Users\root\Documents\PHPProj\emenu\vendor\yiisoft\yii2\console\controllers\BaseMigrateController.php(520): m130524_201442_init->down()
#4 C:\Users\root\Documents\PHPProj\emenu\vendor\yiisoft\yii2\console\controllers\BaseMigrateController.php(185): yii\console\controllers\BaseMigrateController->migrateDown('m130524
_201442_...')
#5 [internal function]: yii\console\controllers\BaseMigrateController->actionDown(1)
#6 C:\Users\root\Documents\PHPProj\emenu\vendor\yiisoft\yii2\base\InlineAction.php(55): call_user_func_array(Array, Array)
#7 C:\Users\root\Documents\PHPProj\emenu\vendor\yiisoft\yii2\base\Controller.php(151): yii\base\InlineAction->runWithParams(Array)
#8 C:\Users\root\Documents\PHPProj\emenu\vendor\yiisoft\yii2\console\Controller.php(91): yii\base\Controller->runAction('down', Array)
#9 C:\Users\root\Documents\PHPProj\emenu\vendor\yiisoft\yii2\base\Module.php(455): yii\console\Controller->runAction('down', Array)
#10 C:\Users\root\Documents\PHPProj\emenu\vendor\yiisoft\yii2\console\Application.php(167): yii\base\Module->runAction('migrate/down', Array)
#11 C:\Users\root\Documents\PHPProj\emenu\vendor\yiisoft\yii2\console\Application.php(143): yii\console\Application->runAction('migrate/down', Array)
#12 C:\Users\root\Documents\PHPProj\emenu\vendor\yiisoft\yii2\base\Application.php(375): yii\console\Application->handleRequest(Object(yii\console\Request))
#13 C:\Users\root\Documents\PHPProj\emenu\yii(27): yii\base\Application->run()
#14 {main}

That's second error. Yes database is empty.
Looked at m140608_173539_create_user_table and others I saw that the tables will be created only if they does not exist, but will be removed in any case. But thus can be removed someone else's table, which is what happens.

I think that yiisoft/yii2#8202 is about this situation too.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions