[Swift-commit] r6730 - trunk/docs/userguide

wilde at ci.uchicago.edu wilde at ci.uchicago.edu
Sat Aug 3 05:54:32 CDT 2013


Author: wilde
Date: 2013-08-03 05:54:30 -0500 (Sat, 03 Aug 2013)
New Revision: 6730

Modified:
   trunk/docs/userguide/reliability_mechanisms
Log:
Add clarification on retries from Mihael's response to a support ticket.

Modified: trunk/docs/userguide/reliability_mechanisms
===================================================================
--- trunk/docs/userguide/reliability_mechanisms	2013-08-03 02:27:56 UTC (rev 6729)
+++ trunk/docs/userguide/reliability_mechanisms	2013-08-03 10:54:30 UTC (rev 6730)
@@ -19,6 +19,40 @@
 property is false) or after all other possible work has been attempted
 (if the lazy.errors property is true).
 
+With or without lazy errors, each app is re-tried <execution.retries>
+times before it is considered failed for good. An app that has failed
+but still has retries left will appear as "Failed but can retry".
+
+Without lazy errors, once the first (time-wise) app has run out of
+retries, the whole run is stopped and the error reported.
+
+With lazy errors, if an app fails after all retries, its outputs are
+marked as failed. All apps that depend on failed outputs will also fail
+and their outputs marked as failed. All apps that have non-failed
+outputs will continue to run normally until everything that can proceed
+completes. 
+
+For example, if you have:
+
+----
+foreach x in [1:1024] {
+   app(x);
+}
+----
+
+... and if the first started app fails, all the other ones can still
+continue, and if they don't otherwise fail, the run will only terminate
+when all 1023 of them will complete.
+
+So basically the idea behind lazy errors is to run EVERYTHING that can
+safely be run before stopping.
+
+Some types of errors (such as internal swift errors happening in an app
+thread) will still stop the run immediately even in lazy errors mode.
+But we all know there are no such things as internal swift errors :)
+
+
+
 Restarts
 ~~~~~~~~
 If a run fails, Swift can resume the program from the point of failure.




More information about the Swift-commit mailing list