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

Magento 1.9.3.1 to Magento 2.2.3 #491

Closed
niners52 opened this issue Apr 3, 2018 · 16 comments
Closed

Magento 1.9.3.1 to Magento 2.2.3 #491

niners52 opened this issue Apr 3, 2018 · 16 comments
Labels

Comments

@niners52
Copy link

niners52 commented Apr 3, 2018

I ran the migration and everything went successfully. I can access all products on the front end and all pages in the back end work with the exception of 1. This is a totally vanilla install for Magento 2. When I try to view the All Customers page I get this error-

There has been an error processing your request
Exception printing is disabled by default for security reasons.

Error log record number: 645663791046

Log-

{"0":"No options found.","1":"#0 /var/www/html/vendor/magento/module-customer/Model/AttributeMetadataConverter.php(68): Magento\Eav\Model\Entity\Attribute\Source\Config->getAllOptions()\n#1 /var/www/html/wolf/wolf-automation/vendor/magento/module-customer/Model/Metadata/CustomerMetadata.php(72): Magento\Customer\Model\AttributeMetadataConverter->createMetadataAttribute(Object(Magento\Customer\Model\Attribute))\n#2 /var/www/html/wolf/wolf-automation/vendor/magento/module-customer/Model/Metadata/CustomerMetadata.php(101): Magento\Customer\Model\Metadata\CustomerMetadata->getAttributeMetadata('is_contact')\n#3 /var/www/html/wolf/wolf-automation/vendor/magento/module-customer/Model/Metadata/CachedMetadata.php(85): Magento\Customer\Model\Metadata\CustomerMetadata->getAllAttributesMetadata()\n#4 /var/www/html/wolf/wolf-automation/vendor/magento/module-customer/Ui/Component/Listing/AttributeRepository.php(78): Magento\Customer\Model\Metadata\CachedMetadata->getAllAttributesMetadata()\n#5 /var/www/html/wolf/wolf-automation/vendor/magento/module-customer/Ui/Component/Listing/Columns.php(102): Magento\Customer\Ui\Component\Listing\AttributeRepository->getList()\n#6 /var/www/html/wolf/wolf-automation/vendor/magento/framework/View/Layout/Generator/UiComponent.php(159): Magento\Customer\Ui\Component\Listing\Columns->prepare()\n#7 /var/www/html/wolf/wolf-automation/vendor/magento/framework/View/Layout/Generator/UiComponent.php(156): Magento\Framework\View\Layout\Generator\UiComponent->prepareComponent(Object(Magento\Customer\Ui\Component\Listing\Columns))\n#8 /var/www/html/wolf/wolf-automation/vendor/magento/framework/View/Layout/Generator/UiComponent.php(137): Magento\Framework\View\Layout\Generator\UiComponent->prepareComponent(Object(Magento\Ui\Component\Listing))\n#9 /var/www/html/wolf/wolf-automation/vendor/magento/framework/View/Layout/Generator/UiComponent.php(97): Magento\Framework\View\Layout\Generator\UiComponent->generateComponent(Object(Magento\Framework\View\Layout\Data\Structure), 'customer_listin...', Array, Object(Magento\Framework\View\Layout\Interceptor))\n#10 /var/www/html/wolf/wolf-automation/vendor/magento/framework/View/Layout/GeneratorPool.php(80): Magento\Framework\View\Layout\Generator\UiComponent->process(Object(Magento\Framework\View\Layout\Reader\Context), Object(Magento\Framework\View\Layout\Generator\Context))\n#11 /var/www/html/wolf/wolf-automation/vendor/magento/framework/View/Layout.php(344): Magento\Framework\View\Layout\GeneratorPool->process(Object(Magento\Framework\View\Layout\Reader\Context), Object(Magento\Framework\View\Layout\Generator\Context))\n#12 /var/www/html/wolf/wolf-automation/vendor/magento/framework/View/Layout/Builder.php(129): Magento\Framework\View\Layout->generateElements()\n#13 /var/www/html/wolf/wolf-automation/vendor/magento/framework/View/Page/Builder.php(55): Magento\Framework\View\Layout\Builder->generateLayoutBlocks()\n#14 /var/www/html/wolf/wolf-automation/vendor/magento/framework/View/Layout/Builder.php(65): Magento\Framework\View\Page\Builder->generateLayoutBlocks()\n#15 /var/www/html/wolf/wolf-automation/vendor/magento/framework/View/Layout.php(254): Magento\Framework\View\Layout\Builder->build()\n#16 /var/www/html/wolf/wolf-automation/vendor/magento/framework/View/Layout.php(875): Magento\Framework\View\Layout->build()\n#17 /var/www/html/wolf/wolf-automation/vendor/magento/module-backend/Model/View/Result/Page.php(26): Magento\Framework\View\Layout->getBlock('menu')\n#18 /var/www/html/wolf/wolf-automation/vendor/magento/module-customer/Controller/Adminhtml/Index/Index.php(26): Magento\Backend\Model\View\Result\Page->setActiveMenu('Magento_Custome...')\n#19 /var/www/html/wolf/wolf-automation/vendor/magento/framework/App/Action/Action.php(107): Magento\Customer\Controller\Adminhtml\Index\Index->execute()\n#20 /var/www/html/wolf/wolf-automation/vendor/magento/module-backend/App/AbstractAction.php(229): Magento\Framework\App\Action\Action->dispatch(Object(Magento\Framework\App\Request\Http))\n#21 /var/www/html/wolf/wolf-automation/vendor/magento/framework/Interception/Interceptor.php(58): Magento\Backend\App\AbstractAction->dispatch(Object(Magento\Framework\App\Request\Http))\n#22 /var/www/html/wolf/wolf-automation/vendor/magento/framework/Interception/Interceptor.php(138): Magento\Customer\Controller\Adminhtml\Index\Index\Interceptor->___callParent('dispatch', Array)\n#23 /var/www/html/wolf/wolf-automation/vendor/magento/module-backend/App/Action/Plugin/Authentication.php(143): Magento\Customer\Controller\Adminhtml\Index\Index\Interceptor->Magento\Framework\Interception\{closure}(Object(Magento\Framework\App\Request\Http))\n#24 /var/www/html/wolf/wolf-automation/vendor/magento/framework/Interception/Interceptor.php(135): Magento\Backend\App\Action\Plugin\Authentication->aroundDispatch(Object(Magento\Customer\Controller\Adminhtml\Index\Index\Interceptor), Object(Closure), Object(Magento\Framework\App\Request\Http))\n#25 /var/www/html/wolf/wolf-automation/vendor/magento/framework/Interception/Interceptor.php(153): Magento\Customer\Controller\Adminhtml\Index\Index\Interceptor->Magento\Framework\Interception\{closure}(Object(Magento\Framework\App\Request\Http))\n#26 /var/www/html/wolf/wolf-automation/generated/code/Magento/Customer/Controller/Adminhtml/Index/Index/Interceptor.php(26): Magento\Customer\Controller\Adminhtml\Index\Index\Interceptor->___callPlugins('dispatch', Array, NULL)\n#27 /var/www/html/wolf/wolf-automation/vendor/magento/framework/App/FrontController.php(55): Magento\Customer\Controller\Adminhtml\Index\Index\Interceptor->dispatch(Object(Magento\Framework\App\Request\Http))\n#28 /var/www/html//vendor/magento/framework/Interception/Interceptor.php(58): Magento\Framework\App\FrontController->dispatch(Object(Magento\Framework\App\Request\Http))\n#29 /var/www/html\/vendor/magento/framework/Interception/Interceptor.php(138): Magento\Framework\App\FrontController\Interceptor->___callParent('dispatch', Array)\n#30 /var/www/html//vendor/magento/framework/Interception/Interceptor.php(153): Magento\Framework\App\FrontController\Interceptor->Magento\Framework\Interception\{closure}(Object(Magento\Framework\App\Request\Http))\n#31 /var/www/html//generated/code/Magento/Framework/App/FrontController/Interceptor.php(26): Magento\Framework\App\FrontController\Interceptor->___callPlugins('dispatch', Array, Array)\n#32 /var/www/html//vendor/magento/framework/App/Http.php(135): Magento\Framework\App\FrontController\Interceptor->dispatch(Object(Magento\Framework\App\Request\Http))\n#33 /var/www/html//vendor/magento/framework/App/Bootstrap.php(256): Magento\Framework\App\Http->launch()\n#34 /var/www/html//pub/index.php(37): Magento\Framework\App\Bootstrap->run(Object(Magento\Framework\App\Http\Interceptor))\n#35 {main}","url":"/admin_1u9idw/customer/index/index/key/63cb199b3a51c3f30aea942730a1c11be19d827946f9d68f5cfe819f50b08eea/","script_name":"/index.php"}

How can I access all customers?

@victor-v-rad
Copy link
Collaborator

Hi @niners52

Try cache cleaning and reindexing
php bin/magento cache:flush && php bin/magento indexer:reindex

@niners52
Copy link
Author

niners52 commented Apr 4, 2018

Hey Victor, I already tried that but made sure to do it again. I am still getting the same result.

@niners52
Copy link
Author

niners52 commented Apr 6, 2018

Any update?

@niners52
Copy link
Author

Any more thoughts?

@niners52
Copy link
Author

Any chance to look at this?

@victor-v-rad
Copy link
Collaborator

I see from the backtrance that the attribute "is_contact" can cause this error. If you do not need it you can remove it in admin panel or not to migrate using eav-attribute-groups.xml file <ignore> tag

@niners52
Copy link
Author

I don't need it. How can I remove it in the admin panel?

@victor-v-rad
Copy link
Collaborator

This attribute is not from default Magento attributes and most likely was created by some extensions or manually in Magento 1. So if you do not need it in Magento 2 you can delete it

@niners52
Copy link
Author

Ok. But you said remove it in the admin panel. How can I do that? Or are you talking delete straight in the database?

@victor-v-rad
Copy link
Collaborator

Sorry for misleading. Managing customer attributes possible only on EE version. You can try to remove it from your M2 > DB >eav_attribute table

@niners52
Copy link
Author

I did want to add I am on EE version 2.2.3

I went ahead and removed the attribute in the eav_attribute table. This is how the error currently looks. Everything else on the site is working. I can see that is_contact is still in there. I went ahead and cleared the cache as well as ran the upgrade command but still getting this error.

1 exception(s):
Exception #0 (BadMethodCallException): Missing required argument $options of Magento\Eav\Model\Entity\Attribute\Source\Config.

Exception #0 (BadMethodCallException): Missing required argument $options of Magento\Eav\Model\Entity\Attribute\Source\Config.
#0 /var/www/html/vendor/magento/framework/ObjectManager/Factory/Dynamic/Developer.php(34): Magento\Framework\ObjectManager\Factory\AbstractFactory->resolveArgumentsInRuntime('Magento\Eav\Mod...', Array, Array)
#1 /var/www/html/vendor/magento/framework/ObjectManager/Factory/Dynamic/Developer.php(59): Magento\Framework\ObjectManager\Factory\Dynamic\Developer->_resolveArguments('Magento\Eav\Mod...', Array, Array)
#2 /var/www/html/vendor/magento/framework/ObjectManager/ObjectManager.php(56): Magento\Framework\ObjectManager\Factory\Dynamic\Developer->create('Magento\Eav\Mod...', Array)
#3 /var/www/html/vendor/magento/framework/Validator/UniversalFactory.php(36): Magento\Framework\ObjectManager\ObjectManager->create('Magento\Eav\Mod...', Array)
#4 /var/www/html/vendor/magento/module-eav/Model/Entity/Attribute/AbstractAttribute.php(590): Magento\Framework\Validator\UniversalFactory->create('Magento\Eav\Mod...')
#5 /var/www/html/vendor/magento/module-customer/Model/AttributeMetadataConverter.php(68): Magento\Eav\Model\Entity\Attribute\AbstractAttribute->getSource()
#6 /var/www/html/vendor/magento/module-customer/Model/Metadata/CustomerMetadata.php(72): Magento\Customer\Model\AttributeMetadataConverter->createMetadataAttribute(Object(Magento\Customer\Model\Attribute))
#7 /var/www/html/vendor/magento/module-customer/Model/Metadata/CustomerMetadata.php(101): Magento\Customer\Model\Metadata\CustomerMetadata->getAttributeMetadata('is_contact')
#8 /var/www/html/vendor/magento/module-customer/Model/Metadata/CachedMetadata.php(85): Magento\Customer\Model\Metadata\CustomerMetadata->getAllAttributesMetadata()
#9 /var/www/html/vendor/magento/module-customer/Ui/Component/Listing/AttributeRepository.php(78): Magento\Customer\Model\Metadata\CachedMetadata->getAllAttributesMetadata()
#10 /var/www/html/vendor/magento/module-customer/Ui/Component/Listing/Columns.php(102): Magento\Customer\Ui\Component\Listing\AttributeRepository->getList()
#11 /var/www/html/vendor/magento/framework/View/Layout/Generator/UiComponent.php(159): Magento\Customer\Ui\Component\Listing\Columns->prepare()
#12 /var/www/html/vendor/magento/framework/View/Layout/Generator/UiComponent.php(156): Magento\Framework\View\Layout\Generator\UiComponent->prepareComponent(Object(Magento\Customer\Ui\Component\Listing\Columns))
#13 /var/www/html/vendor/magento/framework/View/Layout/Generator/UiComponent.php(137): Magento\Framework\View\Layout\Generator\UiComponent->prepareComponent(Object(Magento\Ui\Component\Listing))
#14 /var/www/html/vendor/magento/framework/View/Layout/Generator/UiComponent.php(97): Magento\Framework\View\Layout\Generator\UiComponent->generateComponent(Object(Magento\Framework\View\Layout\Data\Structure), 'customer_listin...', Array, Object(Pulsestorm\Nofrillslayout\Framework\View\Layout\Interceptor))
#15 /var/www/html/vendor/magento/framework/View/Layout/GeneratorPool.php(80): Magento\Framework\View\Layout\Generator\UiComponent->process(Object(Magento\Framework\View\Layout\Reader\Context), Object(Magento\Framework\View\Layout\Generator\Context))
#16 /var/www/html/vendor/magento/framework/View/Layout.php(344): Magento\Framework\View\Layout\GeneratorPool->process(Object(Magento\Framework\View\Layout\Reader\Context), Object(Magento\Framework\View\Layout\Generator\Context))
#17 /var/www/html/generated/code/Pulsestorm/Nofrillslayout/Framework/View/Layout/Interceptor.php(102): Magento\Framework\View\Layout->generateElements()
#18 /var/www/html/vendor/magento/framework/View/Layout/Builder.php(129): Pulsestorm\Nofrillslayout\Framework\View\Layout\Interceptor->generateElements()
#19 /var/www/html/vendor/magento/framework/View/Page/Builder.php(55): Magento\Framework\View\Layout\Builder->generateLayoutBlocks()
#20 /var/www/html/vendor/magento/framework/View/Layout/Builder.php(65): Magento\Framework\View\Page\Builder->generateLayoutBlocks()
#21 /var/www/html/vendor/magento/framework/View/Layout.php(254): Magento\Framework\View\Layout\Builder->build()
#22 /var/www/html/vendor/magento/framework/View/Layout.php(875): Magento\Framework\View\Layout->build()
#23 /var/www/html/generated/code/Pulsestorm/Nofrillslayout/Framework/View/Layout/Interceptor.php(427): Magento\Framework\View\Layout->getBlock('menu')
#24 /var/www/html/vendor/magento/module-backend/Model/View/Result/Page.php(26): Pulsestorm\Nofrillslayout\Framework\View\Layout\Interceptor->getBlock('menu')
#25 /var/www/html/generated/code/Magento/Backend/Model/View/Result/Page/Interceptor.php(24): Magento\Backend\Model\View\Result\Page->setActiveMenu('Magento_Custome...')
#26 /var/www/html/vendor/magento/module-customer/Controller/Adminhtml/Index/Index.php(26): Magento\Backend\Model\View\Result\Page\Interceptor->setActiveMenu('Magento_Custome...')
#27 /var/www/html/generated/code/Magento/Customer/Controller/Adminhtml/Index/Index/Interceptor.php(24): Magento\Customer\Controller\Adminhtml\Index\Index->execute()
#28 /var/www/html/vendor/magento/framework/App/Action/Action.php(107): Magento\Customer\Controller\Adminhtml\Index\Index\Interceptor->execute()
#29 /var/www/html/vendor/magento/module-backend/App/AbstractAction.php(229): Magento\Framework\App\Action\Action->dispatch(Object(Magento\Framework\App\Request\Http))
#30 /var/www/html/vendor/magento/framework/Interception/Interceptor.php(58): Magento\Backend\App\AbstractAction->dispatch(Object(Magento\Framework\App\Request\Http))
#31 /var/www/html/vendor/magento/framework/Interception/Interceptor.php(138): Magento\Customer\Controller\Adminhtml\Index\Index\Interceptor->___callParent('dispatch', Array)
#32 /var/www/html/vendor/magento/module-backend/App/Action/Plugin/Authentication.php(143): Magento\Customer\Controller\Adminhtml\Index\Index\Interceptor->Magento\Framework\Interception{closure}(Object(Magento\Framework\App\Request\Http))
#33 /var/www/html/vendor/magento/framework/Interception/Interceptor.php(135): Magento\Backend\App\Action\Plugin\Authentication->aroundDispatch(Object(Magento\Customer\Controller\Adminhtml\Index\Index\Interceptor), Object(Closure), Object(Magento\Framework\App\Request\Http))
#34 /var/www/html/vendor/magento/framework/Interception/Interceptor.php(153): Magento\Customer\Controller\Adminhtml\Index\Index\Interceptor->Magento\Framework\Interception{closure}(Object(Magento\Framework\App\Request\Http))
#35 /var/www/html/generated/code/Magento/Customer/Controller/Adminhtml/Index/Index/Interceptor.php(39): Magento\Customer\Controller\Adminhtml\Index\Index\Interceptor->___callPlugins('dispatch', Array, NULL)
#36 /var/www/html/vendor/magento/framework/App/FrontController.php(55): Magento\Customer\Controller\Adminhtml\Index\Index\Interceptor->dispatch(Object(Magento\Framework\App\Request\Http))
#37 /var/www/html/vendor/magento/framework/Interception/Interceptor.php(58): Magento\Framework\App\FrontController->dispatch(Object(Magento\Framework\App\Request\Http))
#38 /var/www/html/vendor/magento/framework/Interception/Interceptor.php(138): Magento\Framework\App\FrontController\Interceptor->___callParent('dispatch', Array)
#39 /var/www/html/vendor/magento/framework/Interception/Interceptor.php(153): Magento\Framework\App\FrontController\Interceptor->Magento\Framework\Interception{closure}(Object(Magento\Framework\App\Request\Http))
#40 /var/www/html/generated/code/Magento/Framework/App/FrontController/Interceptor.php(26): Magento\Framework\App\FrontController\Interceptor->___callPlugins('dispatch', Array, Array)
#41 /var/www/html/vendor/magento/framework/App/Http.php(135): Magento\Framework\App\FrontController\Interceptor->dispatch(Object(Magento\Framework\App\Request\Http))
#42 /var/www/html/generated/code/Magento/Framework/App/Http/Interceptor.php(24): Magento\Framework\App\Http->launch()
#43 /var/www/html/vendor/magento/framework/App/Bootstrap.php(256): Magento\Framework\App\Http\Interceptor->launch()
#44 /var/www/html/pub/index.php(37): Magento\Framework\App\Bootstrap->run(Object(Magento\Framework\App\Http\Interceptor))
#45 {main}

@niners52
Copy link
Author

I went back and double checked to make sure I was correct but that attribute was there again. So I made sure I deleted it and ran everything again and it came back. Whenever I run the upgrade command that attribute comes back. But if it is a non standard attribute, and I am only running a vanilla codebase, where else is it stored? Or am I deleting it incorrectly? I am just deleting the row in the db.

@victor-v-rad
Copy link
Collaborator

Try to find 'is_contact' string in your Magento 2 code base. Then it becomes clear what module/extension cause the error.

@niners52
Copy link
Author

That was my first thought. But this was from a vanilla install, it started doing this before I have installed a single module. I have now installed a couple so I did the search but the string is_contact does not exist in my codebase.

@niners52
Copy link
Author

If I were you I would make the assumption I am doing something simple wrong so I made a video- https://youtu.be/XGib7aC0q6E The video shows the env file to show you which db needs to be selected, I go into that db and delete the attribute, I go to terminal and flush and clean the cache, run upgrade, flush and clean again and it is back! I then go to Phpstorm and run a search to show you it isn't in a file. Video ends after that. After making the video I thought the only other place it could be was the database so I ran an search of the entire database and it did not appear anywhere else.

@victor-v-rad
Copy link
Collaborator

1 try rm -rf magento_root/var/cache/
2 in PHPStorm search in code, not in names of files/classes
3 in eav_attribute table 'is_contact' record find value of 'source_model' field. It can show the class of the module
4 in customer_eav_attribute find related record of 'is_contact' to see filed 'data_model' and its value. It also can show the class of the module

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

2 participants