From f03b29164b42a691ad0e0fc7ea0821a01e0ebf3f Mon Sep 17 00:00:00 2001 From: Hilary James Oliver Date: Wed, 24 Nov 2021 12:50:54 +1300 Subject: [PATCH] Tidy up the task states section. --- src/glossary.rst | 10 ++ src/img/task-job-icons/job-blank.png | Bin 0 -> 192 bytes src/img/task-job-icons/job-failed.png | Bin 0 -> 474 bytes src/img/task-job-icons/job-running.png | Bin 0 -> 467 bytes src/img/task-job-icons/job-submit-failed.png | Bin 0 -> 442 bytes src/img/task-job-icons/job-submitted.png | Bin 0 -> 439 bytes src/img/task-job-icons/job-succeeded.png | Bin 0 -> 439 bytes src/img/task-job-icons/job-waiting.png | Bin 0 -> 447 bytes src/img/task-job-icons/task-expired.png | Bin 0 -> 785 bytes src/img/task-job-icons/task-failed.png | Bin 0 -> 1346 bytes src/img/task-job-icons/task-preparing.png | Bin 0 -> 1130 bytes src/img/task-job-icons/task-running.png | Bin 0 -> 1221 bytes src/img/task-job-icons/task-submit-failed.png | Bin 0 -> 1289 bytes src/img/task-job-icons/task-submitted.png | Bin 0 -> 1186 bytes src/img/task-job-icons/task-succeeded.png | Bin 0 -> 785 bytes src/img/task-job-icons/task-waiting.png | Bin 0 -> 1047 bytes .../running-workflows/task-job-states.rst | 161 ++++++++++++------ src/user-guide/writing-workflows/runtime.rst | 4 +- 18 files changed, 118 insertions(+), 57 deletions(-) create mode 100644 src/img/task-job-icons/job-blank.png create mode 100644 src/img/task-job-icons/job-failed.png create mode 100644 src/img/task-job-icons/job-running.png create mode 100644 src/img/task-job-icons/job-submit-failed.png create mode 100644 src/img/task-job-icons/job-submitted.png create mode 100644 src/img/task-job-icons/job-succeeded.png create mode 100644 src/img/task-job-icons/job-waiting.png create mode 100644 src/img/task-job-icons/task-expired.png create mode 100644 src/img/task-job-icons/task-failed.png create mode 100644 src/img/task-job-icons/task-preparing.png create mode 100644 src/img/task-job-icons/task-running.png create mode 100644 src/img/task-job-icons/task-submit-failed.png create mode 100644 src/img/task-job-icons/task-submitted.png create mode 100644 src/img/task-job-icons/task-succeeded.png create mode 100644 src/img/task-job-icons/task-waiting.png diff --git a/src/glossary.rst b/src/glossary.rst index c30c562b036..c87e35bc652 100644 --- a/src/glossary.rst +++ b/src/glossary.rst @@ -9,6 +9,16 @@ Glossary The ``cylc validate`` command parses ``flow.cylc`` workflow configuration files and reports syntax errors and deprecation warnings. + retry + Tasks configured to retry on failure will return to the ``waiting`` state + with a new clock trigger to handle the retry delay. Task jobs can + get their try number from the environment, if needed. + + See also: + + * :ref:`TaskRetries` + + workflow cylc workflow A Cylc workflow is a collection of :term:`tasks ` to carry out and diff --git a/src/img/task-job-icons/job-blank.png b/src/img/task-job-icons/job-blank.png new file mode 100644 index 0000000000000000000000000000000000000000..b964ba6a5dff88c0cf38756ab5e4d80397e89ab6 GIT binary patch literal 192 zcmeAS@N?(olHy`uVBq!ia0vp^q9Dw{1|(OCFP#RY*pj^6T^Rm@;DWu&Cj&(|3p^r= z85p>QL70(Y)*K0-AbW|YuPgggZgEi~mEU*Q&jkv}W`;zRIOpf)rskCZxeN@>MX8A; zsVNHOnI#zt?w-B@DSD~wKyejM7sn8b)5(AS|Nmdlrp2trCe;w=?9MA|T5{zAh_RH3 Yfg#d>MeWEF+g^}Cp00i_>zopr09E@lTL1t6 literal 0 HcmV?d00001 diff --git a/src/img/task-job-icons/job-failed.png b/src/img/task-job-icons/job-failed.png new file mode 100644 index 0000000000000000000000000000000000000000..d73f1057e75104f249bd0bfe87bdba8f74eaf1e3 GIT binary patch literal 474 zcmeAS@N?(olHy`uVBq!ia0vp^q9Dw{1|(OCFP#RY*pj^6U4S$Y{B+)352QE?JR*x3 z7`TN&n2}-D90{Nxdx@v7EBjM!adAcg-L_X{Kq1-8kcblJ{M_8syb>Unfx)>bHL)Z$ zMWH;iBtya7(>EYRFO{8vfzi&>#WBR<^xLT$vzQ!3T+df;judy5cHVc;C`pkc?B6o` zg#4%S8LAQOA!b6I9D2K6pILIFv-6mP&znbU*`A$Cyk~Py_T#;3hB=3yTC%Tf;@GW| zy#21wbgv^zg|wQ^7rQ(;vHF-udcz4z_Q+#31_|c#KcD1kVE>jV%eXA&*wU99HM>@n z@4j*?H)JYDg6Yf;SKd!vdws>6q=T(V=iV|Z9Lh3#yzyp>isGT_xZ}x}jxq@zWV>t` zx$k^h~#|>t`t1-+u47Lwg;1k^Wt?(wpV$pn*SBQXx;p;^v8YW zo3#$UTYsrV9F= z(W&*6KX~iVp>P3fUPlonag*u0-}D_-edrfFLxNi|e&dEW?~b28aIRyOR>OQf;Zwfz zo_BB@lVDi0bwv|L!%Dk^8rHzjulGLB)0`XEw!SlQ3cqGopeB!Qpvd)etP%0TWw#AE zB9b}wv_IcIXZ38oyVrTb+14)>JCm7yYmFxxSf;0Q?d5TIm^sEmLq`yUak+GY&iMzrP<&9B*m3m+y2gNantx( zcuC&k(iz|9SB|`mX)J#nCE3h-D8JW;r!`DS;AYXZTBf^V`8!{R-ntD6TTfR%mvv4F FO#mhpxfB2Z literal 0 HcmV?d00001 diff --git a/src/img/task-job-icons/job-submit-failed.png b/src/img/task-job-icons/job-submit-failed.png new file mode 100644 index 0000000000000000000000000000000000000000..0fdd0fcc0e8a887c89003edc4409110243d1eda2 GIT binary patch literal 442 zcmeAS@N?(olHy`uVBq!ia0vp^q9Dw{1|(OCFP#RY*pj^6U4S$Y{B+)352QE?JR*x3 z7`TN&n2}-D90{Nxdx@v7EBjM!ad8H@%c|cDfI_mFArU3c`MJ5Nc_lzD1A}u>YGO%h zib8p2Nrr;Er*A-tUMf2S1EZX$i(`nz>9<#QdoeqT9Q*j+(ztr#CV`&LXR<8|ruOUX z>qvOW>vF;DNt2>jWVvy=PFb(i77w5FeOX-(kC&%C@aQpQiZD17{X}`u*PXMbw+L)V zP>J-KmKI^K=;WhyS{_O(f*JPA6zn>1_^9&H(>y&>mHlqm=Uue5UK7}G@M^>C&(W(Q zPg)5E{wjC2QfJ?B=3%G79{J!sVk=CPPiAGP7}QAxon6JodZ^}~Y*)7Eu{Cwpsm&ML zZfpGN%)hAnYyHI?l4lmxuG=^Fu8h(R`7b(OcU&=D;jsGpqT-v0x8|?AdQ0_C;QH?K zwRUnfx)>bHL)Z$ zMWH;iBtya7(>EYRFO{8vfl=Di#WBR<^xLTi{g?~|+V=ZxKg}v&U>Ilf$d})4Xa583 ziq8usN_QGE@-W`Hd#>Vz6HDjCP=2*Po|nyL{ex=25f-DB{k{N&N) z&xDdqjFU~`4dT{)yO&$g_i3_DllVF7+^R|k7ojhA**6#adqqx*=&^WjX#B}0ef?go cp!fF~<{wQvT>cUHx3vIVCg!00gtDZ2$lO literal 0 HcmV?d00001 diff --git a/src/img/task-job-icons/job-succeeded.png b/src/img/task-job-icons/job-succeeded.png new file mode 100644 index 0000000000000000000000000000000000000000..de7300a7fb07efd44a97b575e98c156f8cdb19a6 GIT binary patch literal 439 zcmeAS@N?(olHy`uVBq!ia0vp^q9Dw{1|(OCFP#RY*pj^6U4S$Y{B+)352QE?JR*x3 z7`TN&n2}-D90{Nxdx@v7EBjM!aWQK{*A~Atppa~4NJNQqer|4RUI~!Pz~Eeznpl#W zqEMb$lA+-4=^K!um&(q-z$oqM;uvCa`t8)cSxk;1t^2FXr@c6K=#+_I4b$v~jtR#< zSiY&{ov%5K+ics!5H>;QCZmkB{4T@9qoz~vv_H@zk+9%NX}hXrX8}y=!(Ig?Z?^cZK55tqI-lU zPVNp`w`9}C)sClkIp$xeXWe?pYbVzd&#I~Ev%H>IIKHqeIhiF{_ujIOMV#4sE#KGO zRV_?Ba_l_w+t!r7_BuI#!iDVbD^$1c@Z>ni@NL_1`9C|m85CRgxA+GgUuZGMHU6-v cfMCc}`PiLFyOd^oPX~pcr>mdKI;Vst0P%3Cb^rhX literal 0 HcmV?d00001 diff --git a/src/img/task-job-icons/job-waiting.png b/src/img/task-job-icons/job-waiting.png new file mode 100644 index 0000000000000000000000000000000000000000..15078b46933e23a21ccaa34de84b023dadeefe7a GIT binary patch literal 447 zcmeAS@N?(olHy`uVBq!ia0vp^q9Dw{1|(OCFP#RY*pj^6U4S$Y{B+)352QE?JR*x3 z7`TN&n2}-D90{Nxdx@v7EBjM!aWQMz@))I7ppa~4NJNQqer|4RUI~!Pz~Eeznpl#W zqEMb$lA+-4=^K!um&(q-z^Lr$;uvCa`t8)+e$0jfuKnrP@2PQmP7vTteX-!d>7Oih zjeSfmyF55FIlDgH_d9-fLOM2Nn%!M4lUQ=?;k%j%S)or0tsejT zIW@Is%S7iLuS$1Fe$!Ma{bdww5TC!G^I=_Y=&{fI*9?PFBAc{!H5=V}nLRg0Sw?Mo zUZ(i3=~j;Z7Zx|&YE<|=-A^>bZ3#n3tw(j_@48yGAJ5)CXV`w&&VRc29{uo)?mKqE zZq0Izn@nO}?J_e?-VWFU8GbZ8()Nlj2>E@cM*00MPML_t(I%cYe)ODjPX zhM$>P!%ZaM$Ep`${b~eRQ3N|Xv9L)xEv)j-L=eQ7Rz!$kV__YX7{se?P_Rf`P}d~8 zbBnMWbB)ofZ+*@)?>RGbj?h|bI!J4c)*9D!`EzxJ=Xv~!$C;d*B$-Sigg^+0u%~`Zv)@HnnIyK5Cl!=&CLx;DZZ=F%=<@^L3 zawI@9nfx(SYfW!&Z>#+A@p0<)`j4PeN~Wf!TIJ8p&7qX)`q)2nIW#ncZQDpGkwOS2 zCMH;1T>Q4nAP87qUS@D`u<29?K_ZbLlgThJFc6Kr|8Z$q7U^`l^&!H3%+AiTzP=vK z%C7>4hlj~zGK`IlMU%=1=}IZq*4FSmk9gCYEK9N~Ks>SRfXQwH+@0T_>Rn$8k76Kc`$S zRNl9R*N!92)gHN-2Jij$#-_*B$j2>Jm#~OBFob P00000NkvXXu0mjf5T9FQ literal 0 HcmV?d00001 diff --git a/src/img/task-job-icons/task-failed.png b/src/img/task-job-icons/task-failed.png new file mode 100644 index 0000000000000000000000000000000000000000..3ce9774ebc541416e0255af49562fc9b605e12d9 GIT binary patch literal 1346 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 literal 0 HcmV?d00001 diff --git a/src/img/task-job-icons/task-running.png b/src/img/task-job-icons/task-running.png new file mode 100644 index 0000000000000000000000000000000000000000..7f60c7f9bae377626795d0ba81ec76255a69b518 GIT binary patch literal 1221 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 literal 0 HcmV?d00001 diff --git a/src/img/task-job-icons/task-submitted.png b/src/img/task-job-icons/task-submitted.png new file mode 100644 index 0000000000000000000000000000000000000000..17ec00490dff29acd3121a3df343aac132da0dbc GIT binary patch literal 1186 zcmV;T1YP@yP)WFU8GbZ8()Nlj2>E@cM*00ag}L_t(I%YBvKOH^AF z$3OebIWtqnG&mEA38zLZkijfSa(pN?dI&_cha%Df{agGa1S3L3h$#AjM%hC}mMDl7 zDjd(;)DXd@(q!hIIdj&180Or2y5)lPvSEGpTHm$T+Db%(-9xZ z=P(Qdr4&l3--V+83AVYp$;!$K>+9=eZJT1Th;A7CwYJ9br zXl!gGl}d5ozyWk!$8j9;`8>+1_-tXF`Z=W+l3eI_O*5D_k3 zyhvA97tPJhL?RKCQiuq9dwa~!&-3irGZq#W*xueI7K_o*(Sfe(Ww3}ysZ^51#YO4v z?v@J|F38Bph-_|dN~u)(qg$3G!^6YU-rg=(uU-|~w#9W_5fRZugnT~F=;$b0TU(qz zf1X>nZgJ$u5%#lV$Br>LI7mxN3$|_Z=+Ps;FPeyu&1RXMou#_En(NoEqiI?|`0wAp zlg(z?+uQTcLZJ|eM1pJAuA%EXFJ8PLm&+j{WlcYP_<-xWoIQJ%hK7a!aARYGJ9qAo z%jKx4sbOenh(scR=Xn5}I(3S=x;j38{>;+S5}8Z}4ZyZ-lv12Ib0z>R7K_}zeVeJN zDc-()%j3t7nVg)Y@(PtwR8>{c+}wz5FWI#99b$RvbRk(udk1$rY8T=z?RzB*kEjIjH#(9s;a8|Emc=nM;n1N& zq|<3yT3Wbr%^5{aR2}S07*qoM6N<$f-(e2 A`2YX_ literal 0 HcmV?d00001 diff --git a/src/img/task-job-icons/task-succeeded.png b/src/img/task-job-icons/task-succeeded.png new file mode 100644 index 0000000000000000000000000000000000000000..13818b2c5a4401100590b9c95fa328d9189a8d3c GIT binary patch literal 785 zcmV+s1Md8ZP)WFU8GbZ8()Nlj2>E@cM*00MPML_t(I%cYe)ODjPX zhM$>P!%ZaM$Ep`${b~eRQ3N|Xv9L)xEv)j-L=eQ7Rz!$kV__YX7{se?P_Rf`P}d~8 zbBnMWbB)ofZ+*@)?>RGbj?h|bI!J4c)*9D!`EzxJ=Xv~!$C;d*B$-Sigg^+0u%~`Zv)@HnnIyK5Cl!=&CLx;DZZ=F%=<@^L3 zawI@9nfx(SYfW!&Z>#+A@p0<)`j4PeN~Wf!TIJ8p&7qX)`q)2nIW#ncZQDpGkwOS2 zCMH;1T>Q4nAP87qUS@D`u<29?K_ZbLlgThJFc6Kr|8Z$q7U^`l^&!H3%+AiTzP=vK z%C7>4hlj~zGK`IlMU%=1=}IZq*4FSmk9gCYEK9N~Ks>SRfXQwH+@0T_>Rn$8k76Kc`$S zRNl9R*N!92)gHN-2Jij$#-_*B$j2>Jm#~OBFob P00000NkvXXu0mjf@hV)= literal 0 HcmV?d00001 diff --git a/src/img/task-job-icons/task-waiting.png b/src/img/task-job-icons/task-waiting.png new file mode 100644 index 0000000000000000000000000000000000000000..66a25c1c9e154402c2b3dc8cb5077536d91c2f46 GIT binary patch literal 1047 zcmV+y1nB#TP)WFU8GbZ8()Nlj2>E@cM*00VnTL_t(I%axQ*OEPT~ z#((#WA{CV-Z47i_B~iJmHnxZsf)GeWU!X;OjlPHwMFa)4iP{LYsR$_|Uo8nD%OEO2 zRH(+8IqxEx{yfI}ya&$aF!zsh-E-ZS5)q+6i3pZu@$~e>KbZ`#udjGK9)=G#_{nnH#axbYBg-zM%Q)P+S&+(LPVoc!r?G3m+KGsH>im4 z@bJLe+8ViBj(k3kuIu=GK0F=|FE1}VKR=`EI*~|(NF>7a^fX?t7fsU~sOu~6_V$*g zr6p3S6dfHMjEs!X-``JncQ?(=%~Y#Z3WWlfmzU)8c`h$6sZ=V=&CSu?-tKJd`T)MY zy^%~N+1uO0@Aor3JnF+B8iu3`3Temn9a9$;8Bj9335rX__J;qKOFQ za+%fDRV>RQkw_4W#ZXG2ltRI-RCiEWSela=9EzDWcIRUa!~L3{^r>Cb}U0op}e+@o4IpN{q0l(i*e}DhGJCsrcgF&LvDCKgQm6a9h^|}N8 z4Q|^u_xJa#udicS7O`0D(>Y2hJRT2ob94Cpehv>0NhXsNi^Xq%uWeZt`Fx&aGD#+r zp|7vc@wZY6eQ|MdQ7J`dXD4pAn_MnOCX=C9EMi#}Ua!~5R>LrOdU_(2O0luA!SV4i z-QC?REG#fMIOy2Si9Xx55fRqb*4W?QC!5U@2m}a+!?d)tpzAvIdYww8LN=S_@$r%2 z;bG$OIPrMgdDac{)G!QAPfyw1-K9_{P%4!$3?x@vjn5K!#<-+Ur5)1|jhr_hCwtn02SLjdpk0E?WYykVHe*u3k_c&+! RYXSfO002ovPDHLkV1kIL;28h_ literal 0 HcmV?d00001 diff --git a/src/user-guide/running-workflows/task-job-states.rst b/src/user-guide/running-workflows/task-job-states.rst index 5e7e16c6012..6ac974e2774 100644 --- a/src/user-guide/running-workflows/task-job-states.rst +++ b/src/user-guide/running-workflows/task-job-states.rst @@ -1,81 +1,132 @@ +.. |task-waiting| image:: ../../img/task-job-icons/task-waiting.png + :scale: 100% + :align: middle + +.. |task-expired| image:: ../../img/task-job-icons/task-expired.png + :scale: 100% + :align: middle + +.. |task-preparing| image:: ../../img/task-job-icons/task-preparing.png + :scale: 100% + :align: middle + +.. |task-submitted| image:: ../../img/task-job-icons/task-submitted.png + :scale: 100% + :align: middle + +.. |task-submit-failed| image:: ../../img/task-job-icons/task-submit-failed.png + :scale: 100% + :align: middle + +.. |task-running| image:: ../../img/task-job-icons/task-running.png + :scale: 100% + :align: middle + +.. |task-succeeded| image:: ../../img/task-job-icons/task-succeeded.png + :scale: 100% + :align: middle + +.. |task-failed| image:: ../../img/task-job-icons/task-failed.png + :scale: 100% + :align: middle + + +.. |job-blank| image:: ../../img/task-job-icons/job-blank.png + :scale: 100% + :align: middle + +.. |job-submitted| image:: ../../img/task-job-icons/job-submitted.png + :scale: 100% + :align: middle + +.. |job-submit-failed| image:: ../../img/task-job-icons/job-submit-failed.png + :scale: 100% + :align: middle + +.. |job-running| image:: ../../img/task-job-icons/job-running.png + :scale: 100% + :align: middle + +.. |job-succeeded| image:: ../../img/task-job-icons/job-succeeded.png + :scale: 100% + :align: middle + +.. |job-failed| image:: ../../img/task-job-icons/job-failed.png + :scale: 100% + :align: middle + + Task and Job States =================== **Tasks** are a workflow abstraction; they represent future and past jobs as -well as current active ones. +well as current active ones. Task states are represented by monochromatic icons +like |task-running|. **Jobs** are less of an abstraction; they represent real job scripts submitted to run as a process on a computer somewhere, or the final status of those -real processes. - -A single task can submit multiple jobs, by automatic retry or manual triggering. - -In the Cylc UI, task states are represented by monochromatic task icons, and -job states by coloured job icons. - +real processes. Job states are represented by colored icons like |job-running|. +Several color themes are provided. -.. TODO include task and job state images +A single task can have multiple jobs, by automatic retry or manual triggering. .. table:: - ================ =========== - Task-only states Description - ================ =========== - waiting waiting on prerequisites, triggers, internal queues, or runahead limit - expired will not submit job - too far behind the clock - preparing job being prepared for submission by the scheduler - ================ =========== + ======================================================= =========== + Task & Job States Description + ======================================================= =========== + |task-waiting| |job-blank| waiting waiting on prerequisites + |task-expired| |job-blank| expired will not submit job (too far behind) + |task-preparing| |job-blank| preparing job being prepared + |task-submitted| |job-submitted| submitted job submitted + |task-submit-failed| |job-submit-failed| submit-failed job submission failed + |task-running| |job-running| running job running + |task-succeeded| |job-succeeded| succeeded job succeeded + |task-failed| |job-failed| failed job failed + ======================================================= =========== -.. table:: +Windows on the Workflow +======================= - =============== =========== - Task-job states Description - =============== =========== - submitted job submitted to the job runner on the job platform - submit-failed job submission failed - running job running (*started* message received) - succeeded job succeeded (*succeeded* message received) - failed job failed (*failed* message received) - =============== =========== +Cylc graphs can be very large or even infinite in extent, so the UI often can't +display all the tasks at once. Instead, it displays a moving *window* on the +graph, out to ``n`` graph edges from current active tasks. +The ``n = 0`` window includes only active tasks, where "active" means: -The Active Task Window -====================== +- ``preparing`` tasks +- ``submitted`` and ``running`` tasks - i.e. those with active jobs +- ``waiting`` tasks, that are waiting on: + + - :ref:`clock triggers ` + - :ref:`external triggers
` + - :ref:`internal queues ` + - :ref:`runahead limit ` + +- finished tasks retained as *incomplete* by the scheduler: -Cylc graphs can be very large, or even infinite in cycling workflows, but the -scheduler does not need to be aware of every single task in the entire run. It -just keeps track of current active tasks and what comes after them in the -graph. The meaning of *active tasks* here is: + - ``submit-failed`` tasks if successful submission was not *optional* + - ``succeeded`` or ``failed`` tasks that did not complete *expected outputs* -- Tasks in the ``preparing`` state -- Tasks with active jobs: ``submitted``, ``running`` -- Any ``succeeded`` or ``failed`` tasks being retained as incomplete (and any - ``submit-failed`` tasks) -- Any ``waiting`` tasks held back by unsatisfied external triggers +.. TODO add links above to optional and expected outputs, once documented. -We also call this the ``n=0`` task window. The UI can display more than this, -to a requested number of graph edges around the active tasks. The default -window size is ``n=1``, which is active tasks plus tasks one graph edge away -from them. -.. note:: - Tasks ahead of the n=0 window are displayed by the UI as ``waiting``, but - unlike the "active" waiting tasks they don't actually exist yet as far as - the scheduler is concerned. +The default window extent is ``n = 1``, i.e. tasks out to one graph edge from +current active tasks. +Tasks ahead of the ``n=0`` window are displayed by the UI as ``waiting`` but +the scheduler is not actively managing them yet. -Waiting Tasks in the Active Window ----------------------------------- -Waiting tasks in the ``n=0`` window depend on unsatisfied non-task prerequisites: +Retrying Tasks +============== -- :ref:`InternalQueues` -- :ref:`RunaheadLimit` -- external triggers -- clock triggers - +In Cylc 8, a task that fails but is configured to :term:`retry` will return to +the ``waiting`` state, with a new clock trigger to handle the retry delay. + +.. note:: -A ``waiting`` task that has one or more jobs associated with it must be going -to retry. + A task that is waiting on a retry will already have one or more failed jobs + associated with it. diff --git a/src/user-guide/writing-workflows/runtime.rst b/src/user-guide/writing-workflows/runtime.rst index cc051b22b0d..4e89d227922 100644 --- a/src/user-guide/writing-workflows/runtime.rst +++ b/src/user-guide/writing-workflows/runtime.rst @@ -490,8 +490,8 @@ adding empty runtime placeholders instead of allowing implicit tasks: .. _TaskRetries: -Automatic Task Retry On Failure -------------------------------- +Task Retry On Failure +--------------------- .. seealso::