- During an automated NSX upgrade (via SDDC manager), the Management Plane (MP) precheck (subtask-2) fails. The worker log reports data inconsistencies across the NSX Manager nodes. Following is one of the example with error snippet:
"NSX prechecks failed for the component MP with error(s) : NSX-Mgr0/1/2 : Found data inconsistencies: Found 3 stale records in Traceflow Config, 72 stale records in Traceflow Observation, and 3 stale records in Traceflow Status tables."
The NSX UI (Plan & Troubleshoot -> Traffic Analysis -> Traceflow) does not display these stale traceflow records, indicating a discrepancy between the backend database and the user interface.
- Querying the pre-upgrade check failures API (/api/v1/upgrade/pre-upgrade-checks/failures) confirms the presence of stale traceflow configurations and observations.
VMware NSX 4.1.2
Stale traceflow configurations and observations persist in the Corfu database, preventing the pre-upgrade validation from completing successfully.
Log in to the NSX Manager appliance as root via SSH or console.
Identify the stale traceflow records by executing the following API GET request: curl -k -u "admin" -X GET "https://localhost/policy/api/v1/traceflows"
Review the JSON output and note the unique id for each traceflow returned in the results array.
Delete each stale traceflow record by executing the following API DELETE request, replacing <traceflow-id> with the IDs identified in the previous step: curl -k -u 'admin' -H "X-Allow-Overwrite: true" -X DELETE "https://localhost/policy/api/v1/traceflows/<traceflow-id>
Verify the deletion was successful by running the GET request again and confirming the result_count is 0: curl -k -u "admin" -X GET "https://localhost/policy/api/v1/traceflows"