After migrating Magento 1 products to Magento 2 I get this error in backend when opening products:

{"0":"Class eav/entity_attribute_backend_array does not exist","1":"#1 Magento\Framework\Code\Reader\ClassReader->getConstructor() called at [vendor/magento/framework/ObjectManager/Definition/Runtime.php:49]\n#2 Magento\Framework\ObjectManager\Definition\Runtime->getParameters() ... /","script_name":"/index.php"}

Before importing products I have imported categories and attributes. Magento 1.9.3. -> Magento 2.3.2

2 Answers 2


You have to run below query for identifying that attribute

SELECT * FROM eav_attribute WHERE backend_model = 'eav/entity_attribute_backend_array'

You have to change backend_model this attribute from database .

Replace With This:-


The Magento Data Migration tool does not handle all possible eav_attribute rows cleanly by default.

I suspect that your M1 data base includes rows in eav_attribute that have a backend_model value of "eav/entity_attribute_backend_array". These may have been migrated as-is to M2. If so, they will need to be updated to "Magento\Eav\Model\Entity\Attribute\Backend\ArrayBackend".

In general, all values in M1 eav_attribute.source_model and eav_attribute.backend_model should be reviewed and updated as necessary to the equivalent M2 classes.

It is possible to customize the Data Migration tool, but it may not be worth it for a few cases that can be easily resolved by updating the database.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.