提交 a200ebbc 编写于 作者: P Peter Krempa

storage: gluster: Implement 'checkPool' method so that state is restored

After restart of libvirtd the 'checkPool' method is supposed to validate
that the pool is online. Since libvirt then refreshes the pool contents
anyways just return whether the pool was supposed to be online so that
the code can be reached. This is necessary since if a pool does not
implement the method it's automatically considered as inactive.

Resolves: https://bugzilla.redhat.com/show_bug.cgi?id=1436065
上级 8e013986
...@@ -537,9 +537,22 @@ virStorageBackendGlusterFindPoolSources(virConnectPtr conn ATTRIBUTE_UNUSED, ...@@ -537,9 +537,22 @@ virStorageBackendGlusterFindPoolSources(virConnectPtr conn ATTRIBUTE_UNUSED,
} }
static int
virStorageBackendGlusterCheckPool(virStoragePoolObjPtr pool,
bool *active)
{
/* Return previous state remembered by the status XML. If the pool is not
* available we will fail to refresh it and end up in the same situation.
* This will save one attempt to open the connection to the remote server */
*active = pool->active;
return 0;
}
virStorageBackend virStorageBackendGluster = { virStorageBackend virStorageBackendGluster = {
.type = VIR_STORAGE_POOL_GLUSTER, .type = VIR_STORAGE_POOL_GLUSTER,
.checkPool = virStorageBackendGlusterCheckPool,
.refreshPool = virStorageBackendGlusterRefreshPool, .refreshPool = virStorageBackendGlusterRefreshPool,
.findPoolSources = virStorageBackendGlusterFindPoolSources, .findPoolSources = virStorageBackendGlusterFindPoolSources,
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册