Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Swapping a Matrix field to another will leave orphaned schema + data in the database #4

Closed
angrybrad opened this issue Jan 27, 2017 · 2 comments
Labels
bug mysql severity:normal Bugs that affect typical usage

Comments

@angrybrad
Copy link
Member

angrybrad commented Jan 27, 2017

Environment:

  • Craft version: 3.x
  • PHP version: 7.x
  • Database driver & version: MySQL - need to verify PostgreSQL behavior
  • Plugins & versions:

Description:

Create a Matrix field + blocks. Save the field. Change the field type to a Table. The Matrix table schema still exists in the database.

@angrybrad
Copy link
Member Author

Closely related to issue #1 where we need a consistent way to deal with swapping between field types and their underlying data stores.

@brandonkelly
Copy link
Member

Fixed in 8870c8f

leevigraham added a commit to leevigraham/cms that referenced this issue Jun 1, 2017
This fixes an issue where changing the entryType of an existing entry triggers a 500 error:

PHP Notice 'yii\base\ErrorException' with message 'Undefined index: entryId' 

in /Volumes/Sites/Personal/craft3/vendor/craftcms/cms/src/controllers/EntriesController.php:773

Stack trace:
#0 … vendor/yiisoft/yii2/base/InlineAction.php(57): craft\controllers\EntriesController->actionSwitchEntryType()
#1 … vendor/yiisoft/yii2/base/InlineAction.php(57): ::call_user_func_array:{/Volumes/Sites/Personal/craft3/vendor/yiisoft/yii2/base/InlineAction.php:57}('???', '???')
#2 … vendor/yiisoft/yii2/base/Controller.php(156): yii\base\InlineAction->runWithParams('???')
craftcms#3 … vendor/yiisoft/yii2/base/Module.php(523): yii\base\Controller->runAction('???', '???')
craftcms#4 … vendor/craftcms/cms/src/web/Application.php(246): yii\base\Module->runAction('???', '???')
craftcms#5 … vendor/craftcms/cms/src/web/Application.php(385): craft\web\Application->runAction('???', '???')
craftcms#6 … vendor/craftcms/cms/src/web/Application.php(206): craft\web\Application->_processActionRequest('???')
craftcms#7 … vendor/yiisoft/yii2/base/Application.php(380): craft\web\Application->handleRequest('???')
craftcms#8 … web/index.php(33): yii\base\Application->run()
craftcms#9 {main}
brandonkelly pushed a commit that referenced this issue Jun 1, 2017
This fixes an issue where changing the entryType of an existing entry triggers a 500 error:

PHP Notice 'yii\base\ErrorException' with message 'Undefined index: entryId' 

in /Volumes/Sites/Personal/craft3/vendor/craftcms/cms/src/controllers/EntriesController.php:773

Stack trace:
#0 … vendor/yiisoft/yii2/base/InlineAction.php(57): craft\controllers\EntriesController->actionSwitchEntryType()
#1 … vendor/yiisoft/yii2/base/InlineAction.php(57): ::call_user_func_array:{/Volumes/Sites/Personal/craft3/vendor/yiisoft/yii2/base/InlineAction.php:57}('???', '???')
#2 … vendor/yiisoft/yii2/base/Controller.php(156): yii\base\InlineAction->runWithParams('???')
#3 … vendor/yiisoft/yii2/base/Module.php(523): yii\base\Controller->runAction('???', '???')
#4 … vendor/craftcms/cms/src/web/Application.php(246): yii\base\Module->runAction('???', '???')
#5 … vendor/craftcms/cms/src/web/Application.php(385): craft\web\Application->runAction('???', '???')
#6 … vendor/craftcms/cms/src/web/Application.php(206): craft\web\Application->_processActionRequest('???')
#7 … vendor/yiisoft/yii2/base/Application.php(380): craft\web\Application->handleRequest('???')
#8 … web/index.php(33): yii\base\Application->run()
#9 {main}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug mysql severity:normal Bugs that affect typical usage
Projects
None yet
Development

No branches or pull requests

2 participants