data-migration-tool
data-migration-tool copied to clipboard
Return value of Migration\ResourceModel\AbstractCollection::key() must be an instance of Migration\ResourceModel\mixed, int returned
Preconditions
- Magento 1.9.3.10 to Magento 2.4.5
- PHP 7.4 & MySQL 8.0.30 - Ubuntu 22.04.1
- FRESH Magento 2 install
Steps to reproduce
- Run - composer require magento/data-migration-tool:~2.4.5
- Create and configure a Migration module in app/code/Vendor/Migration following steps in official docs
- Check data integrity and add ignores for tables and fields that are flagged as problematic i.e. 3rd party extensions
- Run - php bin/magento migrate:settings --reset app/code/Vendor/Migration/etc/opensource-to-opensource/1.9.3.10/config.xml
Expected result
[2022-09-08T11:15:47.605990+00:00][INFO][mode: settings][stage: integrity check][step: Settings Step]: started 100% [============================] Remaining Time: < 1 sec [2022-09-08T11:15:47.632163+00:00][INFO][mode: settings][stage: integrity check][step: Stores Step]: started 100% [============================] Remaining Time: < 1 sec [2022-09-08T11:15:47.652288+00:00][INFO][mode: settings][stage: data migration][step: Settings Step]: started 100% [============================] Remaining Time: < 1 sec [2022-09-08T11:15:49.870886+00:00][INFO][mode: settings][stage: data migration][step: Stores Step]: started 100% [>---------------------------] Remaining Time: < 1 sec
Actual result
[2022-09-08T11:15:47.605990+00:00][INFO][mode: settings][stage: integrity check][step: Settings Step]: started 100% [============================] Remaining Time: < 1 sec [2022-09-08T11:15:47.632163+00:00][INFO][mode: settings][stage: integrity check][step: Stores Step]: started 100% [============================] Remaining Time: < 1 sec [2022-09-08T11:15:47.652288+00:00][INFO][mode: settings][stage: data migration][step: Settings Step]: started 100% [============================] Remaining Time: < 1 sec [2022-09-08T11:15:49.870886+00:00][INFO][mode: settings][stage: data migration][step: Stores Step]: started 0% [>---------------------------] Remaining Time: < 1 secReturn value of Migration\ResourceModel\AbstractCollection::key() must be an instance of Migration\ResourceModel\mixed, int returned#0 /var/www/html/magento2/vendor/magento/data-migration-tool/src/Migration/ResourceModel/AbstractCollection.php(69): Migration\ResourceModel\AbstractCollection->key() #1 /var/www/html/magento2/vendor/magento/data-migration-tool/src/Migration/ResourceModel/Destination.php(38): Migration\ResourceModel\AbstractCollection->valid() #2 /var/www/html/magento2/vendor/magento/data-migration-tool/src/Migration/Step/Stores/Data.php(118): Migration\ResourceModel\Destination->saveRecords() #3 /var/www/html/magento2/vendor/magento/data-migration-tool/src/Migration/Mode/AbstractMode.php(82): Migration\Step\Stores\Data->perform() #4 /var/www/html/magento2/vendor/magento/data-migration-tool/src/Migration/Mode/Settings.php(100): Migration\Mode\AbstractMode->runStage() #5 /var/www/html/magento2/vendor/magento/data-migration-tool/src/Migration/Mode/Settings.php(58): Migration\Mode\Settings->runData() #6 /var/www/html/magento2/vendor/magento/data-migration-tool/src/Migration/Console/MigrateSettingsCommand.php(59): Migration\Mode\Settings->run() #7 /var/www/html/magento2/vendor/symfony/console/Command/Command.php(255): Migration\Console\MigrateSettingsCommand->execute() #8 /var/www/html/magento2/vendor/magento/framework/Interception/Interceptor.php(58): Symfony\Component\Console\Command\Command->run() #9 /var/www/html/magento2/vendor/magento/framework/Interception/Interceptor.php(138): Migration\Console\MigrateSettingsCommand\Interceptor->___callParent() #10 /var/www/html/magento2/vendor/magento/framework/Interception/Interceptor.php(153): Migration\Console\MigrateSettingsCommand\Interceptor->Magento\Framework\Interception{closure}() #11 /var/www/html/magento2/generated/code/Migration/Console/MigrateSettingsCommand/Interceptor.php(77): Migration\Console\MigrateSettingsCommand\Interceptor->___callPlugins() #12 /var/www/html/magento2/vendor/symfony/console/Application.php(1009): Migration\Console\MigrateSettingsCommand\Interceptor->run() #13 /var/www/html/magento2/vendor/symfony/console/Application.php(273): Symfony\Component\Console\Application->doRunCommand() #14 /var/www/html/magento2/vendor/magento/framework/Console/Cli.php(116): Symfony\Component\Console\Application->doRun() #15 /var/www/html/magento2/vendor/symfony/console/Application.php(149): Magento\Framework\Console\Cli->doRun() #16 /var/www/html/magento2/bin/magento(23): Symfony\Component\Console\Application->run() #17 {main}
Additional notes
The error: Return value of Migration\ResourceModel\AbstractCollection::key() must be an instance of Migration\ResourceModel\mixed, int returned
I have not been able to find anything related to this error. Is there a compatibility issue with 2.4.5?
Please advise.
Hi @rickg123. Thank you for your report. To speed up processing of this issue, make sure that you provided sufficient information.
Add a comment to assign the issue: @magento I am working on this
- Join Magento Community Engineering Slack and ask your questions in #github channel.
Hi @rickg123! :wave:
Thank you for collaboration. Only members of Community Contributors Team are allowed to be assigned to the issue. Please use @magento add to contributors team
command to join Contributors team.
We are experiencing the same problem, when trying a 1.9.3.6 to 2.4.5 migration, exact same stack trace and error...
And as a result, m2 stores table ends empty, and next bin/magento command fails, and the m2 installation is unusable, until you recover the dreaded stores table....
We also have exactly the same problem, this error occurs when migrating from version 1.9.3.6 to 2.4.5, any solution?
Same error here migrating 1.9.4.0 to 2.4.5. The magento2 implementation got stuck and unusable
Hi guys,
PHP 8.1 is in the System requirements for Magento 2.4.5
Thank you!
Yes I've been working on it this week and tried a PHP 8.1 server. The migration tool worked as expected when using PHP 8.1 instead of PHP 7.4. I was planning to add a note here to anyone seeing the same errors.