Age | Commit message (Collapse) | Author | |
---|---|---|---|
2011-02-22 | Added test case do_not_save_start_parameters_for_temporary_children and fixed | Ingela Anderton Andin | |
dialyzer spec. | |||
2011-02-22 | Do not save parameter list for any temporary processes | Ingela Anderton Andin | |
Previous commit changed the supervisor to not save parameter lists for temporary processes supervised by simple-one-for-one supervisors. But it is unnecessary to save them for any temporary processes as they should not be restarted. Proably the biggest gain is in the simple-one-for-one case. Also changed the test case count_children_memory so it does not test that which_children will produce garbage that must be reclaimed later. This is a strange thing to test and it is no longer true for all invocations of which_children. | |||
2011-02-22 | Do not save initial arguments for dynamic temporary processes | Ingela Anderton Andin | |
2010-11-22 | Remove superfluous supervisor error report | Björn-Egil Dahlberg | |
2010-10-14 | supervisor: Type and spec related changes | Kostis Sagonas | |
- Export two more types so that they can be used in other modules - Correct some types and specs - Add spec for behaviour_info/1 | |||
2010-06-03 | Add declaration for exported types | Kostis Sagonas | |
2010-06-03 | Add types and specs; performed some cleanups also | Kostis Sagonas | |
2010-02-12 | Merge branch 'jn/supervisor_child_count_only' into ccase/r13b04_dev | Erlang/OTP | |
* jn/supervisor_child_count_only: Add count_children/1 to supervisor.erl to determine the number of OTP-8436 Added supervisor:count_children/1 to count the number of children being managed without the memory impact of which_children/1. (Thanks to Jay Nelson.) | |||
2010-02-10 | Add count_children/1 to supervisor.erl to determine the number of | Jay Nelson | |
children being managed without the memory impact of which_children/1 The function which_children/1 returns a list of the child processes currently being supervised, but it has the penalty of creating a new list thereby consuming more memory. In low memory situations it is often desirable to know which supervisor may have generated many processes, but the act of discovering the culprit should not cause the node to crash (or worse a different node if the kernel kills one randomly). The new function count_children/1 can give an indication of which supervisor is taxing resources the most without adding to the burden. Rather than creating a new list, it walks the supervisor's internal children structure using an accumulator function so that any used memory can be incrementally collected yet the resulting count can still be obtained. The return result of count_children/1 is a property list of counts containing: - {specs, Total_Num_Child_Specs} - {active, Num_Active_Child_Processes_Of_Supervisor_Or_Worker_Type} - {supervisors, Num_Supervisor_Type_Children_Including_Dead_Processes} - {workers, Num_Worker_Type_Children_Including_Dead_Processes} This patch was made in response to mailing list discussions of the problem diagnosing heavily taxed production systems. I cannot find the original request, but http://www.erlang.org/cgi-bin/ezmlm-cgi/4/35060 is my original post of the patch. | |||
2009-11-20 | The R13B03 release.OTP_R13B03 | Erlang/OTP | |