During a VMware Cloud Foundation (VCF) or NSX upgrade to version 9.1, the DataMigrationDryRun phase fails. The following error is observed in the Upgrade Coordinator or logical-migration.log on the NSX Manager:
MP: mcgmgmtansx####: NSX Manager upgrade dry run failed. Do not proceed with the upgrade.Migrations that failed: Migrating IpAddressBlockLogicalMigrationTask.IpAddressBlockLogicalMigrationTask: java.lang.NumberFormatException: Zero length BigInteger Exception during Data migration.VMware NSX
The error is caused by a malformed or corrupted IP Address Block object in the CorfuDB.
max_block_size field or have it set to null/0.IpAddressBlockLogicalMigrationTask attempts to perform capacity calculations using the BigInteger Java class. When it encounters a completely empty or null field for an IP Block, the mathematical conversion fails, resulting in the "Zero length BigInteger" exception.To resolve this issue, the corrupted IP Address Block entry must be refreshed in the database to recompute the missing metadata.
Identify the Affected Object: Check the NSX logs or run the following command on the NSX Manager to identify objects with missing maxBlockSize:
Search for entries where the value for maxBlockSize is missing or malformed. Note the UUID or Name (e.g. 111.3).
Trigger a Database Rewrite via UI:
Verify the Fix: Run the corfu_tool_runner.py command again to ensure maxBlockSize now contains a populated value.
Retry Upgrade: Restart the upgrade precheck or dry run. The migration task should now complete successfully.