aboutsummaryrefslogtreecommitdiffstats
path: root/lib/stdlib
AgeCommit message (Collapse)Author
2011-09-16Explicitly kill dynamic children in supervisorsChristopher Faulet
According to the supervisor's documentation: "Important note on simple-one-for-one supervisors: The dynamically created child processes of a simple-one-for-one supervisor are not explicitly killed, regardless of shutdown strategy, but are expected to terminate when the supervisor does (that is, when an exit signal from the parent process is received)." All is fine as long as we stop simple_one_for_one supervisor manually. Dynamic children catch the exit signal from the supervisor and leave. But, if this happens when we stop an application, after the top supervisor has stopped, the application master kills all remaining processes associated to this application. So, dynamic children that trap exit signals can be killed during their cleanup (here we mean inside terminate/2). This is unpredictable and highly time-dependent. In this commit, supervisor module is patched to explicitly terminate dynamic children accordingly to the shutdown strategy. NOTE: Order in which dynamic children are stopped is not defined. In fact, this is "almost" done at the same time.
2011-09-02Merge branch 'bjorn/deprecate-docbuilder/OTP-9509' into devBjörn Gustavsson
* bjorn/deprecate-docbuilder/OTP-9509: Deprecate the docbuilder application
2011-09-02Merge branch 'bjorn/erts/old-code-checking-improvements/OTP-9495' into devBjörn Gustavsson
* bjorn/erts/old-code-checking-improvements/OTP-9495: Make the check_old_code/1 BIF auto-imported
2011-09-02Merge branch 'hb/spec_improvements/OTP-9485' into devHans Bolinder
* hb/spec_improvements/OTP-9485: Improve and correct types and specifications in Kernel and STDLIB
2011-09-01Merge branch 'rc/stdlib-edoc-fix' into devHenrik Nord
* rc/stdlib-edoc-fix: fix broken edoc annotations OTP-9516
2011-09-01Make the check_old_code/1 BIF auto-importedBjörn Gustavsson
check_old_code/1 was documented to be auto-imported, but in fact was not auto-imported. Since check_process_code/2 and the other code loading BIFs are now auto-imported, for consistency auto-import check_old_code/1 too.
2011-09-01Deprecate the docbuilder applicationBjörn Gustavsson
2011-08-31Improve and correct types and specifications in Kernel and STDLIBHans Bolinder
Running Dialyzer on the test suites revealed a few type errors.
2011-08-30Merge branch 'ft/fix_supervisor_temporary_restart' into devHenrik Nord
OTP-9502
2011-08-29Merge branch 'rz/add_proplist_type' into devHenrik Nord
* rz/add_proplist_type: Add a proplist() type OTP-9499
2011-08-29Merge branch 'ml/two-trivial-documentation-fixes' into devHenrik Nord
* ml/two-trivial-documentation-fixes: Fix trivial documentation errors OTP-9498
2011-08-23fix supervisors restarting temporary childrenFred Hebert
In the current implementation of supervisors, temporary children should never be restarted. However, when a temporary child is restarted as part of a one_for_all or rest_for_one strategy where the failing process is not the temporary child, the supervisor still tries to restart it. Because the supervisor doesn't keep some of the MFA information of temporary children, this causes the supervisor to hit its restart limit and crash. This patch fixes the behaviour by inserting a clause in terminate_children/2-3 (private function) that will omit temporary children when building a list of killed processes, to avoid having the supervisor trying to restart them again. Only supervisors in need of restarting children used the list, so the change should be of no impact for the functions that called terminate_children/2-3 only to kill all children. The documentation has been modified to make this behaviour more explicit.
2011-08-18fix broken edoc annotationsRichard Carlsson
2011-08-18Fix a bug in zip:zip_open/1,2.Hans Bolinder
zip:zip_open/1,2 did not accept binary archives. Also corrected the contracts of t/1 and tt/1.
2011-08-17Correct contracts in the zip moduleHans Bolinder
The contracts of zip:zip_list_dir/1 and zip:zip_get/2 have been corrected.
2011-08-16Merge branch 'cr/trivia' into devHenrik Nord
* cr/trivia: replace "a ssl" with "an ssl" reindent pkix_path_validation/3 Trivial documentation fixes OTP-9464
2011-08-15Correct the contract of timer:now_diff/2Hans Bolinder
The contract of timer:now_diff() has been corrected. (Thanks to Alex Morarash).
2011-08-08Fix minor typo in gen_fsm documentationHenrik Nord
2011-08-08Trivial documentation fixesChristian von Roques
2011-07-26Merge branch 'sverker/testcase/OTP-9423' into devSverker Eriksson
* sverker/testcase/OTP-9423: Add test case for ETS bug OTP-9423
2011-07-21Code cleanup, unduplicate test for whitespaceRaimo Niskanen
2011-07-21EOF before first field is only ok for first character in io:freadRaimo Niskanen
2011-07-21At end of input ask for more also for for literal format charactersRaimo Niskanen
2011-07-20Add test case for ETS bug OTP-9423Sverker Eriksson
2011-07-12Merge branch 'maint-r14' into devSverker Eriksson
Conflicts: erts/vsn.mk
2011-07-08Use separate memory carriers for small blocksRickard Green
2011-07-08Make sure supervisor_SUITE:count_children_memory is always skipped when ↵Siri Hansen
erlang:memory is not supported Replace the count_children_allocator_test with try erlang:memory in order to make sure there is no attempt at running this test case if erlang:memory is not supported.
2011-07-07Merge branch 'hb/stdlib/queue_contracts/OTP-9418' into devHans Bolinder
* hb/stdlib/queue_contracts/OTP-9418: Modify the contracts of the queue module
2011-07-07Modify the contracts of the queue moduleHans Bolinder
The contracts of the queue module have been re-written as to avoid some issues concerning Dialyzer and opaque types.
2011-07-06Fix a bug in erl_scan:set_attribute/3Hans Bolinder
2011-07-05Correct the contract of io_lib:fread/2,3Hans Bolinder
2011-06-21Fix trivial documentation errorsMatthias Lang
2011-06-20Add more specs and typesHans Bolinder
An incorrect spec, rpc:yield/1, has been fixed.
2011-06-14Allow erl_tar to create directories inside directory with no read accessSiri Hansen
erl_tar:extract earlier failed when unpacking inside a directory which had some parent directory to which the user had no read access. This is corrected.
2011-05-30Update version numbersBjörn-Egil Dahlberg
2011-05-24Prepare releaseOTP_R14B03Erlang/OTP
2011-05-24Add a proplist() typerzezeski
Recently I was adding specs to an API and found that there is no canonical proplist() type defined.
2011-05-23Fix a spec and a typeHans Bolinder
A specification that could cause problems for Dialyzer has been fixed. An opaque type in erl_eval has been turned in to a ordinary type. This is a temporary fix.
2011-05-19Merge branch 'pan/stdlib_doc_fixes/OTP-9318' into devPatrik Nyblom
* pan/stdlib_doc_fixes/OTP-9318: Fixup of re doc and specs
2011-05-19Fix a bug in erl_eval(3)Hans Bolinder
2011-05-18Fixup of re doc and specsPatrik Nyblom
2011-05-16re: remove gratuitous "it " in manpageTuncer Ayaz
2011-05-16OTP-9022: Fixed endode/decode of values of type Counter32.Micael Karlberg
OTP-9088: [agent] Added support for sending traps to IPv6 targets. OTP-9119: [agent] To be able to handle multiple engine-id(s) when sending trap(s), the function snmp_community_mib:add_community/6 has been added. OTP-9162: [manager] The API for snmp requests has been augmented to allow the caller to override some configuration. OTP-9174: [manager] The old API functions (for get and set requests) are now officially deprecated. OTP-9183: [agent] Pass extra info through the agent to the net-if process when sending notifications. OTP-9208: Added type specs for functions that do not return. Kostis Sagonas Merge branch 'bmk/snmp/snmp420_integration' into dev
2011-05-16OTP-9094: [httpc] Add support for upload body streaming (PUT and POST).Micael Karlberg
Filipe David Manana OTP-9114: [ftp] Added (type) spec for all exported functions. OTP-9123: mod_esi:deliver/2 made to accept binary data. Bernard Duggan OTP-9124: [httpd] Prevent XSS in error pages. Michael Santos OTP-9131: [httpd] Wrong security property names used in documentation. Garrett Smith OTP-9157: [httpd] Improved error messages. Ricardo Catalinas Jim�nez OTP-9158: [httpd] Fix timeout message generated by mod_esi. Bernard Duggan OTP-9202: [httpd] Extended support for file descriptors. Attila Rajmund Nohl OTP-9230: The default ssl kind has now been changed to essl. OTP-9246: [httpc] httpc manager crash because of a handler retry race condition. Merge branch 'bmk/inets/inet56_integration' into dev
2011-05-13Merge branch 'hb/stdlib/dets_tablenames/OTP-9282' into devHans Bolinder
* hb/stdlib/dets_tablenames/OTP-9282: Allow Dets tablenames to be arbitrary terms Conflicts: lib/stdlib/src/dets.erl
2011-05-13Merge branch 'hb/stdlib/doc_specs/OTP-9271' into devHans Bolinder
* hb/stdlib/doc_specs/OTP-9271: Use Erlang specs and types for documentation Conflicts: lib/stdlib/doc/src/timer.xml
2011-05-13Merge branch 'hb/stdlib/specs/OTP-9267' into devHans Bolinder
* hb/stdlib/specs/OTP-9267: Types and specifications have been modified and added Conflicts: lib/stdlib/src/timer.erl
2011-05-12Types and specifications have been modified and addedHans Bolinder
2011-05-12rHans Bolinder
Use Erlang specs and types for documentation
2011-05-11Add timer:tc/1 which measures elapsed time for a fun/0Dan Gudmundsson
Also removes the 'catch' from timer:tc functions which masked errors in measuring code.