From ddca48fd8c9c6af9e509cafdee8cd5423f6c194a Mon Sep 17 00:00:00 2001 From: "Ruben S. Montero" Date: Tue, 29 Jan 2013 22:32:42 +0100 Subject: [PATCH] bug #1740: Use always the Image datastore for DELETE (cherry picked from commit ef171ebea8c8f516181f5c44c37b319fdba8ac8b) --- src/tm/TransferManager.cc | 30 ++++++++++++++++++++++-------- 1 file changed, 22 insertions(+), 8 deletions(-) diff --git a/src/tm/TransferManager.cc b/src/tm/TransferManager.cc index 21b15cf8ab..73393a8456 100644 --- a/src/tm/TransferManager.cc +++ b/src/tm/TransferManager.cc @@ -945,14 +945,28 @@ void TransferManager::epilog_transfer_command( } else //No saving disk { - //DELETE tm_mad hostname:remote_system_dir/disk.i vmid ds_id - xfr << "DELETE " - << vm->get_tm_mad() << " " - << vm->get_hostname() << ":" - << vm->get_remote_system_dir() << "/disk." << disk_id << " " - << vm->get_oid() << " " - << vm->get_ds_id() - << endl; + if ( isVolatile(disk) == true ) + { + tm_mad = vm->get_tm_mad(); + ds_id = vm->get_ds_id(); + } + else + { + tm_mad = disk->vector_value("TM_MAD"); + ds_id = disk->vector_value("DATASTORE_ID"); + } + + if ( !tm_mad.empty() && !ds_id.empty() ) + { + //DELETE tm_mad hostname:remote_system_dir/disk.i vmid ds_id + xfr << "DELETE " + << tm_mad << " " + << vm->get_hostname() << ":" + << vm->get_remote_system_dir() << "/disk." << disk_id << " " + << vm->get_oid() << " " + << ds_id + << endl; + } } }