From: Kamoltat (Junior) Sirivadhna Date: Tue, 28 Apr 2026 20:16:00 +0000 (+0000) Subject: doc: update crushtool.rst X-Git-Url: http://git-server-git.apps.pok.os.sepia.ceph.com/?a=commitdiff_plain;h=8e9e1fa46d1b81cf52f35ad4e83fd635834a324a;p=ceph.git doc: update crushtool.rst Add --show-retry-exhaustion flag to doc Signed-off-by: Kamoltat (Junior) Sirivadhna --- diff --git a/doc/man/8/crushtool.rst b/doc/man/8/crushtool.rst index 4c848659655d..f1de7ef37c4f 100644 --- a/doc/man/8/crushtool.rst +++ b/doc/man/8/crushtool.rst @@ -151,15 +151,35 @@ pools; it only runs simulations by mapping values in the range Displays how many attempts were needed to find a device mapping. For instance:: - 0: 95224 - 1: 3745 - 2: 2225 + tries 0: 95224 + tries 1: 3745 + tries 2: 2225 .. shows that **95224** mappings succeeded without retries, **3745** mappings succeeded with one attempts, etc. There are as many rows as the value of the **--set-choose-total-tries** option. +.. option:: --show-retry-exhaustion + + Checks whether any PG mappings hit the maximum retry limit + (typically 50 tries) and displays a warning if retry exhaustion + is detected. This is useful for validating CRUSH rules, especially + in stretch cluster configurations with exactly + 2 datacenters and 4 replicas can potentially fail to map some PGs due to CRUSH's + pseudorandom selection repeatedly choosing the same datacenter. + Although, the probability is extremely low, we still want to detect this. + + Outputs either a warning message if exhaustion is detected:: + + WARNING: Retry exhaustion detected! + 5 PG(s) hit the maximum retry limit of 50 + This indicates CRUSH failed to find optimal placement for some PGs. + + or a success message showing the maximum tries actually needed:: + + No retry exhaustion detected (maximum tries needed: 7 / 50) + .. option:: --output-csv Creates CSV files (in the current directory) containing information