summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--tests/bugs/bug-905307.t36
-rw-r--r--xlators/mgmt/glusterd/src/glusterd-volgen.c1
2 files changed, 37 insertions, 0 deletions
diff --git a/tests/bugs/bug-905307.t b/tests/bugs/bug-905307.t
new file mode 100644
index 00000000000..d81d81c9fa3
--- /dev/null
+++ b/tests/bugs/bug-905307.t
@@ -0,0 +1,36 @@
+#!/bin/bash
+
+. $(dirname $0)/../include.rc
+. $(dirname $0)/../volume.rc
+
+cleanup;
+TEST glusterd
+TEST pidof glusterd
+
+#test functionality of post-op-delay-secs
+TEST $CLI volume create $V0 replica 2 $H0:$B0/${V0}{0,1}
+
+#Strings should not be accepted.
+TEST ! $CLI volume set $V0 cluster.post-op-delay-secs abc
+
+#-ve ints should not be accepted.
+TEST ! $CLI volume set $V0 cluster.post-op-delay-secs -1
+
+#INT_MAX+1 should not be accepted.
+TEST ! $CLI volume set $V0 cluster.post-op-delay-secs 2147483648
+
+#floats should not be accepted.
+TEST ! $CLI volume set $V0 cluster.post-op-delay-secs 1.25
+
+#min val 0 should be accepted
+TEST $CLI volume set $V0 cluster.post-op-delay-secs 0
+EXPECT "0" volume_option $V0 cluster.post-op-delay-secs
+
+#max val 2147483647 should be accepted
+TEST $CLI volume set $V0 cluster.post-op-delay-secs 2147483647
+EXPECT "2147483647" volume_option $V0 cluster.post-op-delay-secs
+
+#some middle val in range 2147 should be accepted
+TEST $CLI volume set $V0 cluster.post-op-delay-secs 2147
+EXPECT "2147" volume_option $V0 cluster.post-op-delay-secs
+cleanup;
diff --git a/xlators/mgmt/glusterd/src/glusterd-volgen.c b/xlators/mgmt/glusterd/src/glusterd-volgen.c
index b5666e78cba..811ff849428 100644
--- a/xlators/mgmt/glusterd/src/glusterd-volgen.c
+++ b/xlators/mgmt/glusterd/src/glusterd-volgen.c
@@ -131,6 +131,7 @@ static struct volopt_map_entry glusterd_volopt_map[] = {
{"cluster.quorum-count", "cluster/replicate", "quorum-count", NULL, DOC, 0, 1},
{"cluster.choose-local", "cluster/replicate", NULL, NULL, DOC, 0, 2},
{"cluster.self-heal-readdir-size", "cluster/replicate", NULL, NULL, DOC, 0, 2},
+ {"cluster.post-op-delay-secs", "cluster/replicate", NULL, NULL, NO_DOC, 0, 2},
{"cluster.readdir-failover", "cluster/replicate", NULL, NULL, DOC, 0, 2},
/* Stripe xlator options */