vCenter Server upgrade to version 8.0 fails with vpxd service crash during renaming of duplicate objects
search cancel

vCenter Server upgrade to version 8.0 fails with vpxd service crash during renaming of duplicate objects

book

Article ID: 439383

calendar_today

Updated On:

Products

VMware vCenter Server

Issue/Introduction

When upgrading vCenter Server from 7.x to 8.x, the process fails during Stage 2 while starting new services. The vpxd service crashes during the firstboot phase, specifically when the system attempts to automatically resolve naming conflicts in the inventory.

Symptoms:

  • Upgrade fails at the "starting new vCenter Server services" phase. (50%)

  • Error message: "An error occurred while starting service 'vpxd'".

  • Found in vpxd_firstboot.py_stderr.log: ERROR starting vpxd rc: 2, stdout: , stderr: Start service request failed. Error: Service crashed while starting.

  • A core dump file is generated at /var/core/core.vpxd.xxxx.

  • Backtrace analysis reveals a crash in BaseResGroup::RenameInt while attempting to rename a duplicate object :

    e.g., changing

    newName = "NAME_OF_DUPLICATE_OBJECT"
    currentName = "NAME_OF_DUPLICATE_OBJECT (1)"

Environment

vCenter Server 7.0 upgrading to vCenter Server 8.0

Cause

The vpxd service crashes during the post-migration initialization because it encounters duplicate object names (such as Resource Pools or Folders) in the vSphere inventory. While vCenter 8.x logic attempts to automatically resolve these collisions by appending a numeric suffix, a code defect in the RenameInt function triggers a segmentation fault when handling certain inventory objects during this transition.

Resolution

To resolve this issue, you must ensure naming uniqueness in the source vCenter inventory before starting the upgrade:

  1. Revert to Snapshot: Revert the vCenter Server Appliance to the pre-upgrade snapshot and power it on.

  2. Identify Duplicates: Search the vSphere inventory for the duplicate object names identified in the crash backtrace (e.g., newName = "NAME_OF_DUPLICATE_OBJECT").

  3. Rename Objects: Manually rename the duplicate objects to unique values (e.g., append a functional suffix like _App or _DB).

  4. Verify Inventory: Use the vSphere Client or PowerCLI to ensure no two objects of the same type share the same parent and name.

  5. Retry Upgrade: Restart the vCenter 8.x upgrade process.