From: Sage Weil Date: Sun, 27 Jun 2021 15:38:08 +0000 (-0400) Subject: crushtool: require min/max or num-rep for --test X-Git-Tag: v17.1.0~1398^2~10 X-Git-Url: http://git-server-git.apps.pok.os.sepia.ceph.com/?a=commitdiff_plain;h=33f7619764d874b5c56a8626c83206329f866ddd;p=ceph.git crushtool: require min/max or num-rep for --test Adjust CLI test cases accordingly. Note that the reclassify outputs changed slightly because the original maps have min/max_size that vary between rules, so we can't get the exact same output. Signed-off-by: Sage Weil --- diff --git a/src/crush/CrushTester.cc b/src/crush/CrushTester.cc index 22cdf0db270..372e0b9d460 100644 --- a/src/crush/CrushTester.cc +++ b/src/crush/CrushTester.cc @@ -439,6 +439,10 @@ int CrushTester::test() min_x = 0; max_x = 1023; } + if (min_rep < 0 && max_rep < 0) { + cerr << "must specify --num-rep or both --min-rep and --max-rep" << std::endl; + return -EINVAL; + } // initial osd weights vector<__u32> weight; @@ -478,19 +482,14 @@ int CrushTester::test() err << "rule " << r << " dne" << std::endl; continue; } - int minr = min_rep, maxr = max_rep; - if (min_rep < 0 || max_rep < 0) { - minr = crush.get_rule_mask_min_size(r); - maxr = crush.get_rule_mask_max_size(r); - } if (output_statistics) err << "rule " << r << " (" << crush.get_rule_name(r) << "), x = " << min_x << ".." << max_x - << ", numrep = " << minr << ".." << maxr + << ", numrep = " << min_rep << ".." << max_rep << std::endl; - for (int nr = minr; nr <= maxr; nr++) { + for (int nr = min_rep; nr <= max_rep; nr++) { vector per(crush.get_max_devices()); map sizes; @@ -720,13 +719,8 @@ int CrushTester::compare(CrushWrapper& crush2) err << "rule " << r << " dne" << std::endl; continue; } - int minr = min_rep, maxr = max_rep; - if (min_rep < 0 || max_rep < 0) { - minr = crush.get_rule_mask_min_size(r); - maxr = crush.get_rule_mask_max_size(r); - } int bad = 0; - for (int nr = minr; nr <= maxr; nr++) { + for (int nr = min_rep; nr <= max_rep; nr++) { for (int x = min_x; x <= max_x; ++x) { vector out; crush.do_rule(r, x, out, nr, weight, 0); @@ -740,7 +734,7 @@ int CrushTester::compare(CrushWrapper& crush2) if (bad) { ret = -1; } - int max = (maxr - minr + 1) * (max_x - min_x + 1); + int max = (max_rep - min_rep + 1) * (max_x - min_x + 1); double ratio = (double)bad / (double)max; cout << "rule " << r << " had " << bad << "/" << max << " mismatched mappings (" << ratio << ")" << std::endl; diff --git a/src/test/cli/crushtool/arg-order-checks.t b/src/test/cli/crushtool/arg-order-checks.t index d01d43aa0de..85c8748d505 100644 --- a/src/test/cli/crushtool/arg-order-checks.t +++ b/src/test/cli/crushtool/arg-order-checks.t @@ -201,7 +201,7 @@ # end crush map # tunables before reweight - $ crushtool -i "$map" --set-straw-calc-version 0 --reweight --test --show-utilization --max-x 100 --min-x 1 + $ crushtool -i "$map" --set-straw-calc-version 0 --reweight --test --show-utilization --max-x 100 --min-x 1 --min-rep 1 --max-rep 10 rule 0 (replicated_rule), x = 1..100, numrep = 1..10 rule 0 (replicated_rule) num_rep 1 result size == 1:\t100/100 (esc) device 0:\t\t stored : 4\t expected : 4 (esc) @@ -466,7 +466,7 @@ device 23:\t\t stored : 13\t expected : 20 (esc) device 24:\t\t stored : 18\t expected : 20 (esc) crushtool successfully built or modified map. Use '-o ' to write it out. - $ crushtool -i "$map" --set-straw-calc-version 1 --reweight --test --show-utilization --max-x 100 --min-x 1 + $ crushtool -i "$map" --set-straw-calc-version 1 --reweight --test --show-utilization --max-x 100 --min-x 1 --min-rep 1 --max-rep 10 rule 0 (replicated_rule), x = 1..100, numrep = 1..10 rule 0 (replicated_rule) num_rep 1 result size == 1:\t100/100 (esc) device 1:\t\t stored : 1\t expected : 4 (esc) diff --git a/src/test/cli/crushtool/reclassify.t b/src/test/cli/crushtool/reclassify.t index 3ae1529a67a..ea04ff10e98 100644 --- a/src/test/cli/crushtool/reclassify.t +++ b/src/test/cli/crushtool/reclassify.t @@ -18,7 +18,7 @@ moving items from -23 (ttipod001-cephosd-1-ssd) to -7 (ttipod001-cephosd-1) moving items from -22 (ttipod001-cephosd-2-ssd) to -8 (ttipod001-cephosd-2) moving items from -21 (ssd) to -5 (default) - $ crushtool -i $TESTDIR/crush-classes/a --compare foo + $ crushtool -i $TESTDIR/crush-classes/a --compare foo --min-rep 1 --max-rep 10 rule 0 had 0/10240 mismatched mappings (0) rule 1 had 0/10240 mismatched mappings (0) maps appear equivalent @@ -51,7 +51,7 @@ moving items from -9 (node-21-ssd) to -25 (node-21) moving items from -8 (node-20-ssd) to -18 (node-20) moving items from -7 (ssd) to -13 (default) - $ crushtool -i $TESTDIR/crush-classes/d --compare foo + $ crushtool -i $TESTDIR/crush-classes/d --compare foo --min-rep 1 --max-rep 10 rule 0 had 0/10240 mismatched mappings (0) rule 1 had 0/10240 mismatched mappings (0) maps appear equivalent @@ -99,7 +99,7 @@ this one has weird node weights, so *lots* of mappings change... - $ crushtool -i $TESTDIR/crush-classes/e --compare foo + $ crushtool -i $TESTDIR/crush-classes/e --compare foo --min-rep 1 --max-rep 10 rule 0 had 6540/10240 mismatched mappings (0.638672) rule 1 had 8417/10240 mismatched mappings (0.821973) warning: maps are NOT equivalent @@ -149,9 +149,9 @@ this one has weird node weights, so *lots* of mappings change... wonky crush weights on Ceph-Stor1, so a small number of mappings change because the new map has a strictly summing hierarchy. - $ crushtool -i $TESTDIR/crush-classes/c --compare foo + $ crushtool -i $TESTDIR/crush-classes/c --compare foo --min-rep 1 --max-rep 10 rule 0 had 158/10240 mismatched mappings (0.0154297) - rule 1 had 62/5120 mismatched mappings (0.0121094) + rule 1 had 138/10240 mismatched mappings (0.0134766) rule 2 had 0/10240 mismatched mappings (0) warning: maps are NOT equivalent [1] @@ -222,7 +222,7 @@ because the new map has a strictly summing hierarchy. renumbering bucket -83 -> -55 renumbering bucket -73 -> -56 renumbering bucket -69 -> -57 - $ crushtool -i $TESTDIR/crush-classes/beesly --compare foo + $ crushtool -i $TESTDIR/crush-classes/beesly --compare foo --min-rep 1 --max-rep 10 rule 0 had 0/10240 mismatched mappings (0) rule 1 had 0/10240 mismatched mappings (0) rule 2 had 0/10240 mismatched mappings (0) @@ -238,7 +238,7 @@ because the new map has a strictly summing hierarchy. renumbering bucket -4 -> -11 renumbering bucket -3 -> -13 renumbering bucket -2 -> -14 - $ crushtool -i $TESTDIR/crush-classes/flax --compare foo + $ crushtool -i $TESTDIR/crush-classes/flax --compare foo --min-rep 1 --max-rep 10 rule 0 had 0/10240 mismatched mappings (0) maps appear equivalent @@ -279,9 +279,9 @@ below is an adjusted version of the same cluster's map renumbering bucket -14 -> -200 renumbering bucket -5 -> -201 renumbering bucket -2 -> -202 - $ crushtool -i $TESTDIR/crush-classes/gabe2 --compare foo + $ crushtool -i $TESTDIR/crush-classes/gabe2 --compare foo --min-rep 1 --max-rep 10 rule 0 had 627/10240 mismatched mappings (0.0612305) - rule 1 had 422/6144 mismatched mappings (0.0686849) + rule 1 had 652/10240 mismatched mappings (0.0636719) warning: maps are NOT equivalent [1] @@ -404,9 +404,9 @@ below is an adjusted version of the same cluster's map new bucket -155 missing parent, adding at {root=default} new bucket -154 missing parent, adding at {root=default} - $ crushtool -i $TESTDIR/crush-classes/b --compare foo - rule 0 had 0/3072 mismatched mappings (0) - rule 1 had 0/4096 mismatched mappings (0) + $ crushtool -i $TESTDIR/crush-classes/b --compare foo --min-rep 1 --max-rep 10 + rule 0 had 0/10240 mismatched mappings (0) + rule 1 had 0/10240 mismatched mappings (0) maps appear equivalent $ crushtool -i $TESTDIR/crush-classes/f --reclassify --reclassify-root default hdd -o foo @@ -440,9 +440,9 @@ below is an adjusted version of the same cluster's map We expect some mismatches below because there are some ssd-labeled nodes under default that we aren't changing the class on. - $ crushtool -i $TESTDIR/crush-classes/f --compare foo + $ crushtool -i $TESTDIR/crush-classes/f --compare foo --min-rep 1 --max-rep 10 rule 0 had 627/10240 mismatched mappings (0.0612305) - rule 1 had 422/6144 mismatched mappings (0.0686849) + rule 1 had 652/10240 mismatched mappings (0.0636719) warning: maps are NOT equivalent [1] @@ -556,7 +556,7 @@ default that we aren't changing the class on. moving items from -4 (sata-osd14) to -87 (osd14) moving items from -3 (sata-osd10) to -86 (osd10) moving items from -2 (sata-osd11) to -85 (osd11) - $ crushtool -i $TESTDIR/crush-classes/g --compare foo + $ crushtool -i $TESTDIR/crush-classes/g --compare foo --min-rep 1 --max-rep 10 rule 0 had 0/10240 mismatched mappings (0) rule 1 had 0/10240 mismatched mappings (0) maps appear equivalent diff --git a/src/test/cli/crushtool/set-choose.t b/src/test/cli/crushtool/set-choose.t index 42df9f21e26..bd0e800406e 100644 --- a/src/test/cli/crushtool/set-choose.t +++ b/src/test/cli/crushtool/set-choose.t @@ -1,5 +1,5 @@ $ crushtool -c "$TESTDIR/set-choose.crushmap.txt" -o set-choose.crushmap - $ crushtool -i set-choose.crushmap --test --show-mappings --show-statistics --set-straw-calc-version 0 + $ crushtool -i set-choose.crushmap --test --show-mappings --show-statistics --set-straw-calc-version 0 --min-rep 2 --max-rep 3 rule 0 (choose), x = 0..1023, numrep = 2..3 CRUSH rule 0 x 0 [0,3] CRUSH rule 0 x 1 [0,8] @@ -12307,7 +12307,7 @@ CRUSH rule 5 x 1023 [3,2,8] rule 5 (chooseleaf-set) num_rep 3 result size == 3:\t1024/1024 (esc) crushtool successfully built or modified map. Use '-o ' to write it out. - $ crushtool -i set-choose.crushmap --test --show-mappings --show-statistics --weight 0 0 --weight 1 0 --weight 3 0 --weight 4 0 --set-straw-calc-version 0 + $ crushtool -i set-choose.crushmap --test --show-mappings --show-statistics --weight 0 0 --weight 1 0 --weight 3 0 --weight 4 0 --set-straw-calc-version 0 --min-rep 2 --max-rep 3 rule 0 (choose), x = 0..1023, numrep = 2..3 CRUSH rule 0 x 0 [2,5] CRUSH rule 0 x 1 [2,8] @@ -24620,7 +24620,7 @@ CRUSH rule 5 x 1023 [5,2,8] rule 5 (chooseleaf-set) num_rep 3 result size == 3:\t1024/1024 (esc) crushtool successfully built or modified map. Use '-o ' to write it out. - $ crushtool -i set-choose.crushmap --test --show-mappings --show-statistics --weight 0 0 --weight 3 0 --weight 4 .5 --weight 5 0 --weight 6 .1 --weight 7 0 --set-straw-calc-version 0 + $ crushtool -i set-choose.crushmap --test --show-mappings --show-statistics --weight 0 0 --weight 3 0 --weight 4 .5 --weight 5 0 --weight 6 .1 --weight 7 0 --set-straw-calc-version 0 --min-rep 2 --max-rep 3 rule 0 (choose), x = 0..1023, numrep = 2..3 CRUSH rule 0 x 0 [2,4] CRUSH rule 0 x 1 [2,8] diff --git a/src/test/cli/crushtool/test-map-bobtail-tunables.t b/src/test/cli/crushtool/test-map-bobtail-tunables.t index 5037cfd8e87..3bec87a746d 100644 --- a/src/test/cli/crushtool/test-map-bobtail-tunables.t +++ b/src/test/cli/crushtool/test-map-bobtail-tunables.t @@ -1,4 +1,4 @@ - $ crushtool -i "$TESTDIR/test-map-a.crushmap" --test --show-mappings --show-statistics --rule 0 --set-choose-local-tries 0 --set-choose-local-fallback-tries 0 --set-choose-total-tries 50 --set-chooseleaf-descend-once 1 + $ crushtool -i "$TESTDIR/test-map-a.crushmap" --test --show-mappings --show-statistics --rule 0 --set-choose-local-tries 0 --set-choose-local-fallback-tries 0 --set-choose-total-tries 50 --set-chooseleaf-descend-once 1 --min-rep 1 --max-rep 10 rule 0 (data), x = 0..1023, numrep = 1..10 CRUSH rule 0 x 0 [36] CRUSH rule 0 x 1 [876] diff --git a/src/test/cli/crushtool/test-map-firefly-tunables.t b/src/test/cli/crushtool/test-map-firefly-tunables.t index 93bba48d787..a17b157033f 100644 --- a/src/test/cli/crushtool/test-map-firefly-tunables.t +++ b/src/test/cli/crushtool/test-map-firefly-tunables.t @@ -1,4 +1,4 @@ - $ crushtool -i "$TESTDIR/test-map-vary-r.crushmap" --test --show-mappings --show-statistics --rule 0 --set-choose-local-tries 0 --set-choose-local-fallback-tries 0 --set-choose-total-tries 50 --set-chooseleaf-descend-once 1 --set-chooseleaf-vary-r 1 --weight 12 0 --weight 20 0 --weight 30 0 + $ crushtool -i "$TESTDIR/test-map-vary-r.crushmap" --test --show-mappings --show-statistics --rule 0 --set-choose-local-tries 0 --set-choose-local-fallback-tries 0 --set-choose-total-tries 50 --set-chooseleaf-descend-once 1 --set-chooseleaf-vary-r 1 --weight 12 0 --weight 20 0 --weight 30 0 --min-rep 1 --max-rep 10 rule 0 (data), x = 0..1023, numrep = 1..10 CRUSH rule 0 x 0 [101] CRUSH rule 0 x 1 [80] diff --git a/src/test/cli/crushtool/test-map-firstn-indep.t b/src/test/cli/crushtool/test-map-firstn-indep.t index 1b8c736ea68..4b67285d11d 100644 --- a/src/test/cli/crushtool/test-map-firstn-indep.t +++ b/src/test/cli/crushtool/test-map-firstn-indep.t @@ -1,8 +1,8 @@ $ crushtool -c "$TESTDIR/test-map-firstn-indep.txt" -o "$TESTDIR/test-map-firstn-indep.crushmap" - $ crushtool -i "$TESTDIR/test-map-firstn-indep.crushmap" --test --rule 0 --x 1 --show-bad-mappings + $ crushtool -i "$TESTDIR/test-map-firstn-indep.crushmap" --test --rule 0 --x 1 --show-bad-mappings --min-rep 1 --max-rep 10 bad mapping rule 0 x 1 num_rep 9 result [93,80,88,87,56,50,53,72] bad mapping rule 0 x 1 num_rep 10 result [93,80,88,87,56,50,53,72] - $ crushtool -i "$TESTDIR/test-map-firstn-indep.crushmap" --test --rule 1 --x 1 --show-bad-mappings + $ crushtool -i "$TESTDIR/test-map-firstn-indep.crushmap" --test --rule 1 --x 1 --show-bad-mappings --min-rep 1 --max-rep 10 bad mapping rule 1 x 1 num_rep 3 result [93,56] bad mapping rule 1 x 1 num_rep 4 result [93,56] bad mapping rule 1 x 1 num_rep 5 result [93,56] diff --git a/src/test/cli/crushtool/test-map-hammer-tunables.t b/src/test/cli/crushtool/test-map-hammer-tunables.t index 75c15e26e78..a5b720fe99a 100644 --- a/src/test/cli/crushtool/test-map-hammer-tunables.t +++ b/src/test/cli/crushtool/test-map-hammer-tunables.t @@ -1,4 +1,4 @@ - $ crushtool -i "$TESTDIR/test-map-hammer-tunables.crushmap" --test --show-mappings --show-statistics --rule 0 --weight 12 0 --weight 20 0 --weight 30 0 + $ crushtool -i "$TESTDIR/test-map-hammer-tunables.crushmap" --test --show-mappings --show-statistics --rule 0 --weight 12 0 --weight 20 0 --weight 30 0 --min-rep 1 --max-rep 10 rule 0 (data), x = 0..1023, numrep = 1..10 CRUSH rule 0 x 0 [101] CRUSH rule 0 x 1 [80] diff --git a/src/test/cli/crushtool/test-map-indep.t b/src/test/cli/crushtool/test-map-indep.t index 37eb7b51d11..8863321754d 100644 --- a/src/test/cli/crushtool/test-map-indep.t +++ b/src/test/cli/crushtool/test-map-indep.t @@ -1,4 +1,4 @@ - $ crushtool -i "$TESTDIR/test-map-indep.crushmap" --test --show-mappings --show-statistics --rule 1 --set-choose-local-tries 0 --set-choose-local-fallback-tries 0 --set-choose-total-tries 50 --set-chooseleaf-descend-once 2 + $ crushtool -i "$TESTDIR/test-map-indep.crushmap" --test --show-mappings --show-statistics --rule 1 --set-choose-local-tries 0 --set-choose-local-fallback-tries 0 --set-choose-total-tries 50 --set-chooseleaf-descend-once 2 --min-rep 1 --max-rep 10 rule 1 (metadata), x = 0..1023, numrep = 1..10 CRUSH rule 1 x 0 [36] CRUSH rule 1 x 1 [876] diff --git a/src/test/cli/crushtool/test-map-jewel-tunables.t b/src/test/cli/crushtool/test-map-jewel-tunables.t index f0c632b3b3f..47acb51a4fa 100644 --- a/src/test/cli/crushtool/test-map-jewel-tunables.t +++ b/src/test/cli/crushtool/test-map-jewel-tunables.t @@ -1,4 +1,4 @@ - $ crushtool -i "$TESTDIR/test-map-jewel-tunables.crushmap" --test --show-mappings --show-statistics --rule 0 --weight 12 0 --weight 20 0 --weight 30 0 + $ crushtool -i "$TESTDIR/test-map-jewel-tunables.crushmap" --test --show-mappings --show-statistics --rule 0 --weight 12 0 --weight 20 0 --weight 30 0 --min-rep 1 --max-rep 10 rule 0 (data), x = 0..1023, numrep = 1..10 CRUSH rule 0 x 0 [101] CRUSH rule 0 x 1 [80] diff --git a/src/test/cli/crushtool/test-map-legacy-tunables.t b/src/test/cli/crushtool/test-map-legacy-tunables.t index fe28c70ea5c..bdfa004acb7 100644 --- a/src/test/cli/crushtool/test-map-legacy-tunables.t +++ b/src/test/cli/crushtool/test-map-legacy-tunables.t @@ -1,4 +1,4 @@ - $ crushtool -i "$TESTDIR/test-map-a.crushmap" --test --show-mappings --show-statistics --rule 0 + $ crushtool -i "$TESTDIR/test-map-a.crushmap" --test --show-mappings --show-statistics --rule 0 --min-rep 1 --max-rep 10 rule 0 (data), x = 0..1023, numrep = 1..10 CRUSH rule 0 x 0 [36] CRUSH rule 0 x 1 [876] diff --git a/src/test/cli/crushtool/test-map-vary-r-0.t b/src/test/cli/crushtool/test-map-vary-r-0.t index 389e3cf9e76..0a294aa9693 100644 --- a/src/test/cli/crushtool/test-map-vary-r-0.t +++ b/src/test/cli/crushtool/test-map-vary-r-0.t @@ -1,4 +1,4 @@ - $ crushtool -i "$TESTDIR/test-map-vary-r.crushmap" --test --show-mappings --show-statistics --rule 3 --set-chooseleaf-vary-r 0 --weight 0 0 --weight 4 0 --weight 9 0 + $ crushtool -i "$TESTDIR/test-map-vary-r.crushmap" --test --show-mappings --show-statistics --rule 3 --set-chooseleaf-vary-r 0 --weight 0 0 --weight 4 0 --weight 9 0 --min-rep 2 --max-rep 4 rule 3 (delltestrule), x = 0..1023, numrep = 2..4 CRUSH rule 3 x 0 [94,85] CRUSH rule 3 x 1 [73,78] diff --git a/src/test/cli/crushtool/test-map-vary-r-1.t b/src/test/cli/crushtool/test-map-vary-r-1.t index f58886056b6..3b871c1290f 100644 --- a/src/test/cli/crushtool/test-map-vary-r-1.t +++ b/src/test/cli/crushtool/test-map-vary-r-1.t @@ -1,4 +1,4 @@ - $ crushtool -i "$TESTDIR/test-map-vary-r.crushmap" --test --show-mappings --show-statistics --rule 3 --set-chooseleaf-vary-r 1 --weight 0 0 --weight 4 0 --weight 9 0 + $ crushtool -i "$TESTDIR/test-map-vary-r.crushmap" --test --show-mappings --show-statistics --rule 3 --set-chooseleaf-vary-r 1 --weight 0 0 --weight 4 0 --weight 9 0 --min-rep 2 --max-rep 4 rule 3 (delltestrule), x = 0..1023, numrep = 2..4 CRUSH rule 3 x 0 [94,6] CRUSH rule 3 x 1 [73,52] diff --git a/src/test/cli/crushtool/test-map-vary-r-2.t b/src/test/cli/crushtool/test-map-vary-r-2.t index efc1932ec4a..c9d936590f5 100644 --- a/src/test/cli/crushtool/test-map-vary-r-2.t +++ b/src/test/cli/crushtool/test-map-vary-r-2.t @@ -1,4 +1,4 @@ - $ crushtool -i "$TESTDIR/test-map-vary-r.crushmap" --test --show-mappings --show-statistics --rule 3 --set-chooseleaf-vary-r 2 --weight 0 0 --weight 4 0 --weight 9 0 + $ crushtool -i "$TESTDIR/test-map-vary-r.crushmap" --test --show-mappings --show-statistics --rule 3 --set-chooseleaf-vary-r 2 --weight 0 0 --weight 4 0 --weight 9 0 --min-rep 2 --max-rep 4 rule 3 (delltestrule), x = 0..1023, numrep = 2..4 CRUSH rule 3 x 0 [94,45] CRUSH rule 3 x 1 [73,78] diff --git a/src/test/cli/crushtool/test-map-vary-r-3.t b/src/test/cli/crushtool/test-map-vary-r-3.t index ec41ecbf370..554e0bc656a 100644 --- a/src/test/cli/crushtool/test-map-vary-r-3.t +++ b/src/test/cli/crushtool/test-map-vary-r-3.t @@ -1,4 +1,4 @@ - $ crushtool -i "$TESTDIR/test-map-vary-r.crushmap" --test --show-mappings --show-statistics --rule 3 --set-chooseleaf-vary-r 3 --weight 0 0 --weight 4 0 --weight 9 0 + $ crushtool -i "$TESTDIR/test-map-vary-r.crushmap" --test --show-mappings --show-statistics --rule 3 --set-chooseleaf-vary-r 3 --weight 0 0 --weight 4 0 --weight 9 0 --min-rep 2 --max-rep 4 rule 3 (delltestrule), x = 0..1023, numrep = 2..4 CRUSH rule 3 x 0 [94,85] CRUSH rule 3 x 1 [73,78] diff --git a/src/test/cli/crushtool/test-map-vary-r-4.t b/src/test/cli/crushtool/test-map-vary-r-4.t index e32a1944680..29b41ccf69b 100644 --- a/src/test/cli/crushtool/test-map-vary-r-4.t +++ b/src/test/cli/crushtool/test-map-vary-r-4.t @@ -1,4 +1,4 @@ - $ crushtool -i "$TESTDIR/test-map-vary-r.crushmap" --test --show-mappings --show-statistics --rule 3 --set-chooseleaf-vary-r 4 --weight 0 0 --weight 4 0 --weight 9 0 + $ crushtool -i "$TESTDIR/test-map-vary-r.crushmap" --test --show-mappings --show-statistics --rule 3 --set-chooseleaf-vary-r 4 --weight 0 0 --weight 4 0 --weight 9 0 --min-rep 2 --max-rep 4 rule 3 (delltestrule), x = 0..1023, numrep = 2..4 CRUSH rule 3 x 0 [94,85] CRUSH rule 3 x 1 [73,78]