----------------------------------------------------------- This is an automatically generated e-mail. To reply, visit: https://reviews.apache.org/r/10766/ -----------------------------------------------------------
(Updated April 25, 2013, 4:48 a.m.) Review request for cloudstack and Chip Childers. Changes ------- In both 4.0 and 4.1, all secondary storage is added via KVMStoragePoolManager.getStoragePoolByURI, but in 4.0 this calls LibvirtComputingResource.createStoragePool, and in 4.1 it calls KVMStoragePoolManager.createStoragePool, the primary difference being that the KVMStoragePoolManager version adds the pool to the list of KVMHAMonitor pools to run heartbeat against, then also calls <appropriateStorageAdaptor>.createStoragePool. This patch allows us to continue using everything through KVMStoragePoolManager so that we can support multiple storage adaptors, but any secondary storage registration (via getStoragePoolByURI) skips the adding to the KVMHA heartbeat list, and so functions like it did in 4.0 In the process a null pointer was discovered in KVMHAMonitor.java, this includes a fix for that as well. Description ------- the KVM HA runner uses any NFS secondary storage resource available to a host to store it's HA data. This causes template deletes to fail because it cannot delete KVMHA, which is a directory that is not empty. So if KVMHA directory is found, delete it's contents before trying to delete it. This addresses bug CLOUDSTACK-2173. Diffs (updated) ----- plugins/hypervisors/kvm/src/com/cloud/hypervisor/kvm/resource/KVMHAMonitor.java d1470d6 plugins/hypervisors/kvm/src/com/cloud/hypervisor/kvm/storage/KVMStoragePoolManager.java c2bfad9 Diff: https://reviews.apache.org/r/10766/diff/ Testing ------- Had a bunch of templates that the scavenger was failing to clean up. Applied this patch, installed the code, and the templates all cleaned up successfully. Thanks, Marcus Sorensen