diff options
author | Henrik Nord <[email protected]> | 2011-10-20 14:38:31 +0200 |
---|---|---|
committer | Henrik Nord <[email protected]> | 2011-10-20 14:38:37 +0200 |
commit | e21bc712b95b878afd9ab3d93ac27ded0bce7ccf (patch) | |
tree | 404f249c13b57209a98c045e428b94c254ff6ca1 /system/doc/design_principles | |
parent | 6ef9aef50dbe839098e4330a97247aa21a15ecde (diff) | |
parent | 9679510bb27b569fd47394b6cb319916c3282de9 (diff) | |
download | otp-e21bc712b95b878afd9ab3d93ac27ded0bce7ccf.tar.gz otp-e21bc712b95b878afd9ab3d93ac27ded0bce7ccf.tar.bz2 otp-e21bc712b95b878afd9ab3d93ac27ded0bce7ccf.zip |
Merge branch 'cf/supervisor_shutdown_infinity'
* cf/supervisor_shutdown_infinity:
Add a warning to docs about workers' shutdown strategy
Allow an infinite timeout to shutdown worker processes
OTP-9648
Diffstat (limited to 'system/doc/design_principles')
-rw-r--r-- | system/doc/design_principles/sup_princ.xml | 10 |
1 files changed, 9 insertions, 1 deletions
diff --git a/system/doc/design_principles/sup_princ.xml b/system/doc/design_principles/sup_princ.xml index 2748f21bbe..9e7cc2f543 100644 --- a/system/doc/design_principles/sup_princ.xml +++ b/system/doc/design_principles/sup_princ.xml @@ -181,8 +181,16 @@ init(...) -> terminated using <c>exit(Child, kill)</c>.</item> <item>If the child process is another supervisor, it should be set to <c>infinity</c> to give the subtree enough time to - shutdown.</item> + shutdown. It is also allowed to set it to <c>infinity</c>, if the + child process is a worker.</item> </list> + <warning> + <p>Be careful by setting the <c>Shutdown</c> strategy to + <c>infinity</c> when the child process is a worker. Because, in this + situation, the termination of the supervision tree depends on the + child process, it must be implemented in a safe way and its cleanup + procedure must always return.</p> + </warning> </item> <item> <p><c>Type</c> specifies if the child process is a supervisor or |