mirror of
https://gitlab.com/libvirt/libvirt.git
synced 2024-12-23 06:05:27 +00:00
storage: Need to clear pool prior to calling the refreshPool
Prior to calling the 'refreshPool' during CreatePool or UploadPool operations, we need to clear the pool; otherwise, the pool will have duplicated entries.
This commit is contained in:
parent
2c52ec43aa
commit
5e54361c9d
@ -727,6 +727,7 @@ storagePoolCreateXML(virConnectPtr conn,
|
||||
stateFile = virFileBuildPath(driver->stateDir,
|
||||
pool->def->name, ".xml");
|
||||
|
||||
virStoragePoolObjClearVols(pool);
|
||||
if (!stateFile || virStoragePoolSaveState(stateFile, pool->def) < 0 ||
|
||||
backend->refreshPool(conn, pool) < 0) {
|
||||
if (stateFile)
|
||||
@ -918,6 +919,7 @@ storagePoolCreate(virStoragePoolPtr obj,
|
||||
stateFile = virFileBuildPath(driver->stateDir,
|
||||
pool->def->name, ".xml");
|
||||
|
||||
virStoragePoolObjClearVols(pool);
|
||||
if (!stateFile || virStoragePoolSaveState(stateFile, pool->def) < 0 ||
|
||||
backend->refreshPool(obj->conn, pool) < 0) {
|
||||
if (stateFile)
|
||||
@ -2363,6 +2365,7 @@ storageVolUpload(virStorageVolPtr obj,
|
||||
* interaction and we can just lookup the backend in the callback
|
||||
* routine in order to call the refresh API.
|
||||
*/
|
||||
virStoragePoolObjClearVols(pool);
|
||||
if (backend->refreshPool) {
|
||||
if (VIR_ALLOC(cbdata) < 0 ||
|
||||
VIR_STRDUP(cbdata->pool_name, pool->def->name) < 0)
|
||||
|
Loading…
Reference in New Issue
Block a user