magento / magento/data-migration-tool
Migration getting stuck at post processing leftover
- Dominant language
- PHP
- Stars
- 339
- Forks
- 195
- PR merge metrics
- No merged PRs in 30d
Description
### Preconditions
1. Magento 1.9.4.5
2. Magento 2.4.5 MySQL 8.0.29, PHP 8.1.10
3. several modules installed
### Steps to reproduce
1. install Magento 2.4.5 with data-migration-tool 2.4.5
2. run bin/magento migrate:settings [...]/magento2/vendor/magento/data-migration-tool/etc/opensource-to-opensource/1.9.4.5/config.xml without errors
4. run bin/magento migrate:data [...]/magento2/vendor/magento/data-migration-tool/etc/opensource-to-opensource/1.9.4.5/config.xml
5. At post processing step 80% getting error: 'Argument#1 must be of type array, null given'
### Expected result
1. Expected succesful migration step post processing after all other steps run without errors
### Actual result
Stack Trace
[2022-09-23T19:57:52.770580+00:00][INFO][mode: data][stage: data migration][step: PostProcessing Step]: started
80% [======================>-----] Remaining Time: < 1 secarray_merge(): Argument #1 must be of type array, null given#0 [...]/magento2/vendor/magento/data-migration-tool/src/Migration/Step/PostProcessing/Data/DeletedRecordsCounter.php(93): array_merge()
#1 [...]/magento2/vendor/magento/data-migration-tool/src/Migration/Step/PostProcessing/Data.php(110): Migration\Step\PostProcessing\Data\DeletedRecordsCounter->saveChanged()
#2 [...]/magento2/vendor/magento/data-migration-tool/src/Migration/Mode/AbstractMode.php(82): Migration\Step\PostProcessing\Data->perform()
#3 [...]/magento2/vendor/magento/data-migration-tool/src/Migration/Mode/Data.php(124): Migration\Mode\AbstractMode->runStage()
#4 [...]/magento2/vendor/magento/data-migration-tool/src/Migration/Mode/Data.php(69): Migration\Mode\Data->runData()
#5 [...]/magento2/vendor/magento/data-migration-tool/src/Migration/Console/MigrateDataCommand.php(59): Migration\Mode\Data->run()
#6 [...]/magento2/vendor/symfony/console/Command/Command.php(255): Migration\Console\MigrateDataCommand->execute()
#7 [...]/magento2/vendor/magento/framework/Interception/Interceptor.php(58): Symfony\Component\Console\Command\Command->run()
#8 [...]/magento2/vendor/magento/framework/Interception/Interceptor.php(138): Migration\Console\MigrateDataCommand\Interceptor->___callParent()
#9 [...]/magento2/vendor/magento/framework/Interception/Interceptor.php(153): Migration\Console\MigrateDataCommand\Interceptor->Magento\Framework\Interception\{closure}()
#10 [...]/magento2/generated/code/Migration/Console/MigrateDataCommand/Interceptor.php(77): Migration\Console\MigrateDataCommand\Interceptor->___callPlugins()
#11 [...]/magento2/vendor/symfony/console/Application.php(1009): Migration\Console\MigrateDataCommand\Interceptor->run()
#12 [...]/magento2/vendor/symfony/console/Application.php(273): Symfony\Component\Console\Application->doRunCommand()
#13 [...]/magento2/vendor/magento/framework/Console/Cli.php(116): Symfony\Component\Console\Application->doRun()
#14 [...]/magento2/vendor/symfony/console/Application.php(149): Magento\Framework\Console\Cli->doRun()
#15 [...]/magento2/bin/magento(23): Symfony\Component\Console\Application->run()
#16 {main}
### Additional notes
Tried to find information about this error on google without success. Hope, anyone can help me understanding this error and necessary steps to avoid it.
Contributor guide
Research direction
Start with vendor/magento/data-migration-tool/src/Migration/Step/PostProcessing/Data/DeletedRecordsCounter.php at line 93, then trace the call from Data.php line 110 during the migrate:data command. Reproduce the failure with the 1.9.4.5 configuration and inspect why array_merge receives null. Done means the Post Processing Step completes successfully without the reported error.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- mysql, php
- Domain
- databases
- Issue type
- Bug
- Difficulty
- 3/5
- Estimated time
- 1-2 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 42/100