A Storage vMotion of a virtual machine fails with a general system error: Storage VMotion Failed to copy one or more of the VMs disks
search cancel

A Storage vMotion of a virtual machine fails with a general system error: Storage VMotion Failed to copy one or more of the VMs disks

book

Article ID: 303143

calendar_today

Updated On:

Products

VMware vCenter Server

Issue/Introduction

Symptoms:
  • Storage vMotions fail with the error window:

    A general system error occurred: Storage VMotion Failed to copy one or more of the VMs disks, Please consult the VM’s log For more details, looking For lines starting with “CbTMotion’. See the error stack For details on the cause of this problem

    Error Stack information:

    Disk clone Failed. Canceling Storage vMotion,Storage vMotion clone operation Failed. Cause: The called Function cannot be performed on partial chains. Open the parent virtual disk
  • The vmware.log file (located at /vmfs/volumes/Virtual_Machine_Storage_Path/Virtual_Machine/)contains entries similar to:

    Dec 09 05:36:58.449: Worker#0| DISKLIB-LIB : CREATE: "/vmfs/volumes/<Virtual Machine Storage Path>/<Virtual Machine>/<Virtual Machine>.vmdk" -- vmfs capacity=0 (0 bytes) adapter=Invalid cowGran=0
    Dec 09 05:36:58.451: Worker#0| DISKLIB-LIB : Failed to clone : The called function cannot be performed on partial chains. Open the parent virtual disk (5).
    Dec 09 05:36:58.451: Worker#0| CBTMotion: scsi0:1: Clone: copy operation failed: The called function cannot be performed on partial chains. Open the parent virtual disk
    Dec 09 05:36:58.451: Worker#0| CBTMotion: scsi0:1: failed to clone disk from <Virtual Machine>.vmdk to /vmfs/volumes/\<Virtual Machine Storage Path>/<Virtual Machine>/<Virtual Machine>.vmdk.
    Dec 09 05:36:58.451: Worker#0| CBTMotion: disk clone failed, aborting Storage VMotion.
    Dec 09 05:36:58.451: Worker#0| Msg_Post: Error
    Dec 09 05:36:58.451: Worker#0| [msg.cbtmotion.clonefail] Storage vMotion clone operation failed. Cause: The called function cannot be performed on partial chains. Open the parent virtual disk
    Dec 09 05:36:58.451: Worker#0| [msg.cbtmotion.disk.clone.failed] Disk clone failed. Canceling Storage vMotion.
    Dec 09 05:36:58.451: Worker#0| ----------------------------------------
    Dec 09 05:36:58.716: vmx| CBTMotion: Worker thread exited.


Cause

This issue occurs because the VMDK descriptor for the base disk has an incorrect parentCID value.

 

# Disk DescriptorFile

version=1

encoding="UTF-8"

CID=f7365fa0

parentCID=f7362355 < This is the incorrect parentCID for the base disk</FONT>

 

isNativeSnapshot="no"

createType="vmfs"

# Extent description

RW 20971520 VMFS "ABCD_1-flat.vmdk"

# The Disk Data Base

#DDB

ddb.adapterType = "lsilogic"

ddb.geometry.sectors = "63"

ddb.geometry.heads = "255"

ddb.geometry.cylinders = "1305"

ddb.uuid = "60 00 C2 96 ## ## ## ##-## ## ## ## 9d 62 66 c7"

ddb.longContentID = "66ac04e389fa0af019516a19f7365fa0"

ddb.virtualHWVersion = "7"

ddb.deletable = "true"

Resolution

To resolve this issue:
  1. Open an SSH session to the host the virtual machine is registered to. 
  2. Navigate to the folder were the virtual machine resides.

    Example: cd /vmfs/volumes/virtual_machine_storage/Virtual_Machine_name/

  3. Make a backup of the .vmdk file. by running the command:

    cp Virtual_Machine_name.vmdk Virtual_Machine_name-backup.vmdk

  4. Open the Virtual_Machine_name.vmdk file that was listed in the logs with a text editor. For more information, see Editing files on an ESX host using vi or nano (1020302).

    Note: Ensure the file being opened does not look like <virtual machine>-<number>.vmdk as this is a snapshot and should not be treated the same way.

  5. Search for the entry:

    parentCID=
    fxxxxxxx
  6. Modify it if necessary to:

    parentCID=ffffffff

  7. Save and close the .vmdk file.
  8. Verify the virtual machine is now able to perform a Storage vMotion.