bug 10632: allow volume to be recreated when it is in recreating state

This commit is contained in:
Alex Huang 2011-07-08 14:39:51 -07:00
parent cae81c9a66
commit c679fc078a

View File

@ -31,6 +31,7 @@ import java.util.Iterator;
import java.util.LinkedList;
import java.util.List;
import java.util.Map;
import java.util.Random;
import java.util.Set;
import java.util.UUID;
import java.util.concurrent.Executors;
@ -112,8 +113,8 @@ import com.cloud.exception.StorageUnavailableException;
import com.cloud.host.Host;
import com.cloud.host.HostVO;
import com.cloud.host.Status;
import com.cloud.host.dao.HostDetailsDao;
import com.cloud.host.dao.HostDao;
import com.cloud.host.dao.HostDetailsDao;
import com.cloud.hypervisor.Hypervisor.HypervisorType;
import com.cloud.hypervisor.HypervisorGuruManager;
import com.cloud.network.NetworkManager;
@ -183,8 +184,6 @@ import com.cloud.vm.dao.SecondaryStorageVmDao;
import com.cloud.vm.dao.UserVmDao;
import com.cloud.vm.dao.VMInstanceDao;
import java.util.Random;
@Local(value = { StorageManager.class, StorageService.class })
public class StorageManagerImpl implements StorageManager, StorageService, Manager, ClusterManagerListener {
private static final Logger s_logger = Logger.getLogger(StorageManagerImpl.class);
@ -2627,7 +2626,7 @@ public class StorageManagerImpl implements StorageManager, StorageService, Manag
}
if (assignedPool != null) {
Volume.State state = vol.getState();
if (state == Volume.State.Allocated) {
if (state == Volume.State.Allocated && state == Volume.State.Creating) {
recreateVols.add(vol);
} else {
if (vol.isRecreatable()) {