VMware NSX upgrade precheck has error: Failed migrations: Exception during Data migration.
search cancel

VMware NSX upgrade precheck has error: Failed migrations: Exception during Data migration.

book

Article ID: 322551

calendar_today

Updated On:

Products

VMware NSX

Issue/Introduction

Symptoms:

  • You are upgrading VMware NSX-T Data Center 3.x to VMware NSX 4.1.x, but less than 4.1.1.
  • The Manager pre check fails with a Critical alert:
NSX Manager upgrade dry run failed. Do not proceed with the upgrade. Please collect the support bundle and contact VMware GSS. Failed migrations: Exception during Data migration.
  • In the VMware NSX-T manager log: /var/log/upgrade-coordinator/logical-migration.log we see:
<date/time> INFO pool-9-thread-1 MigrationTask 16568 - [nsx@6876 comp="nsx-manager" level="INFO" subcomp="manager"] Clearing table QosProfileInternal
<date/time> ERROR pool-9-thread-1 ImmutableCorfuTable 16568 Received an exception while computing the index. This is most likely an issue with the client's indexing function.
java.lang.IllegalArgumentException: Malformed secondary key=abstract_policy_resource.managed_resource.forward_relationship, field <abstract_policy_resource> of type PRIMITIVE.
        at org.corfudb.runtime.collections.ProtobufIndexer.getIndexedValues(ProtobufIndexer.java:148) ~[logical-migration.jar:?]
        at org.corfudb.runtime.collections.ProtobufIndexer.lambda$getNestedIndex$2(ProtobufIndexer.java:75) ~[logical-migration.jar:?]
        at org.corfudb.runtime.collections.ImmutableCorfuTable$IndexMapping.update(ImmutableCorfuTable.java:200) ~[logical-migration.jar:?]
...
        at org.corfudb.runtime.collections.TxnContext.clear(TxnContext.java:394) ~[logical-migration.jar:?]

        at com.vmware.nsx.persistence.UfoTxn.clear(UfoTxn.java:188) ~[logical-migration.jar:?]

        at com.vmware.nsx.management.migration.impl.InternalTableDeleteMigrationTask.migrate(InternalTableDeleteMigrationTask.java:233) ~[logical-migration.jar:?]
...

Environment

VMware NSX 4.1.0.2
VMware NSX-T

Cause

There is a table called QosProfileInternal in the corfu DB, it is no longer used in VMware NSX 4.1.x.
As part of the pre checks, the corfu data migration dry run tool is run to test data migration from the previous version to the new version, to avoid issues during the upgrade.
The pre checks fail when it is trying to read this table.

Resolution

This issue is resolved in VMware NSX 4.1.1

Workaround:

If you have encountered this issue during the pre checks, as the issue is resolved in a released version, please download VMware NSX 4.1.1 and upgrade to that version instead.
If you believe you have encountered this issue and are unable to upgrade to the GA version 4.1.1, please open a support request with Broadcom Support and refer to this KB article.