Troubleshoot upgrade compatibility tool errors

This article explains the errors you can encounter while using the Upgrade Compatibility Tool and offers solutions to ensure successful execution.

Description description

Environment

Adobe Commerce versions from 2.3.0 onwards

1. Segmentation fault error

Cause: When two modules have the same name, the Upgrade Compatibility Tool shows a segmentation fault error.

2. Empty output

Steps to reproduce:

  1. If after running this bash command:

    code language-none
    bin/uct upgrade:check INSTALLATION_DIR -c M2_VERSION
    
  2. The only output is Upgrade compatibility tool:

    code language-none
    bin/uct upgrade:check /var/www/project/magento/ -c 2.4.1
    Upgrade compatibility tool
    

Cause:

The likely cause is a PHP memory limitation.

There are two possible solutions to avoid this PHP memory limitation.

Resolution resolution

Solution for Segmentation Fault Error

To avoid this error, it is recommended to specify the path to the module as an argument:

bin/uct upgrade:check --current-version=2.4.4 path/to/the/module

Warning: The Upgrade Compatibility Tool may not be able to analyze the codebase if it contains circular dependency between methods.

Solutions for Empty Output

Solution 1:

Override the memory limitation by setting memory_limit to -1:

php -d memory_limit=-1 /bin/uct upgrade:check INSTALLATION_DIR -c M2_VERSION

Note: The M2_VERSION is the target Adobe Commerce version you want to compare to your Adobe Commerce instance.

Solution 2:

Adding the -m option allows the Upgrade Compatibility Tool to analyze each specific module independently to avoid encountering two modules with the same name in your Adobe Commerce instance.

This command option also allows the Upgrade Compatibility Tool to analyze a folder containing several modules:

bin/uct upgrade:check /<dir>/<instance-name> -m /vendor/<vendor-name>/
recommendation-more-help
3d58f420-19b5-47a0-a122-5c9dab55ec7f