nfs: only set the pool size when it exists
For CRD not using the new nfs spec that includes the pool settings, applying the "size" property won't work since it is set to 0. The pool still gets created but returns an error. The loop is re-queued but on the second run the pool is detected so no further configuration is done. Closes: https://github.com/rook/rook/issues/9205 Signed-off-by: Sébastien Han <seb@redhat.com>
This commit is contained in:
1 parent
e9f9a40138
commit
c3accdcc3a
1 file changed
+5
-2
@@ -408,8 +408,11 @@ func CreateReplicatedPoolForApp(context *clusterd.Context, clusterInfo *ClusterI
|
||||
|
||||
if !clusterSpec.IsStretchCluster() {
|
||||
// the pool is type replicated, set the size for the pool now that it's been created
|
||||
if err := SetPoolReplicatedSizeProperty(context, clusterInfo, poolName, strconv.FormatUint(uint64(pool.Replicated.Size), 10)); err != nil {
|
||||
return errors.Wrapf(err, "failed to set size property to replicated pool %q to %d", poolName, pool.Replicated.Size)
|
||||
// Only set the size if not 0, otherwise ceph will fail to set size to 0
|
||||
if pool.Replicated.Size > 0 {
|
||||
if err := SetPoolReplicatedSizeProperty(context, clusterInfo, poolName, strconv.FormatUint(uint64(pool.Replicated.Size), 10)); err != nil {
|
||||
return errors.Wrapf(err, "failed to set size property to replicated pool %q to %d", poolName, pool.Replicated.Size)
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
Reference in new issue
Block a user