aboutsummaryrefslogtreecommitdiffstats
AgeCommit message (Collapse)Author
2014-10-23Merge branch 'maint'Hans Bolinder
* maint: Fix rare race condition in Dets
2014-10-23Merge branch 'hb/stdlib/fix_dets_test' into maintHans Bolinder
* hb/stdlib/fix_dets_test: Fix rare race condition in Dets
2014-10-23Fix rare race condition in DetsHans Bolinder
The correction is due to the the evil testcase dets_SUITE:simultaneous_open(). If the process repairing a Dets file is killed (should normally never happen), and another process tries to repair the file, a temporary file from the first process could live on for a while, even after a successful call to file:delete(). This has only been seen on W-nd-ows, where it is a known problem. There are other ways to deal with the problem (rename the file; use some other filename), but we continue using one certain filename in order to be as backwards compatible as possible.
2014-10-23Merge branch 'maint'Hans Bolinder
* maint: debugger: clean up Common Test adaption
2014-10-23Merge branch 'hb/debugger/ct_line_cleanup' into maintHans Bolinder
* hb/debugger/ct_line_cleanup: debugger: clean up Common Test adaption
2014-10-23Merge branch 'hb/dialyzer/compiler_option_asm_removed'Hans Bolinder
* hb/dialyzer/compiler_option_asm_removed: dialyzer: remove recognition of the compiler option 'asm'
2014-10-22ssh: fix .app and .appup errorsHans Nilsson
2014-10-22ssh: remove supervisors for crashed connection workerHans Nilsson
2014-10-22ssh: Print supervisor tree (on demand).Hans Nilsson
2014-10-22Merge branch 'maint'Bruce Yinhe
2014-10-22Merge branch 'vinoski/crashdump-sigusr1' into maintBruce Yinhe
* vinoski/crashdump-sigusr1: Clarify the use of SIGUSR1 for forcing crash dumps
2014-10-22Merge branch 'maint'Bruce Yinhe
2014-10-22Merge branch 'vinoski/clarify-drv-async-return' into maintBruce Yinhe
* vinoski/clarify-drv-async-return: Clarify docs for driver_async() return value
2014-10-22Merge branch 'maint'Bruce Yinhe
2014-10-22Merge branch 'HansN/prop_test_updates' into maintBruce Yinhe
OTP-12256 * HansN/prop_test_updates: Optimizations ssh_eqc_encode_decode.erl compiles Add timeout to a property test (Thanks John & Tobias @ QuviQ) Reduce the total testing time for the properties to 20 seconds No side effects in function arguments Passing global var to QuickCheck statemachine
2014-10-22Merge branch 'maint'Bruce Yinhe
2014-10-22Merge branch 'vinsentru/inets_ftp_extension' into maintBruce Yinhe
OTP-12255 * vinsentru/inets_ftp_extension: INETS FTP: EPSV and EPRT for IPv4 added
2014-10-22syntax_tools: Refactor away ?line macroBjörn-Egil Dahlberg
2014-10-22Make sure code links are generated even if undefined macros existPeter Andersson
OTP-11766
2014-10-22ssh: Add pty_alloc request to ssh:shell/[1,2,3]Ingela Anderton Andin
2014-10-22ssh: Add ptty_alloc/[2,3]Ingela Anderton Andin
2014-10-22Merge branch 'maint'Marcus Arendt
2014-10-22Merge branch 'qrilka/patch-2/typo-fix' into maintMarcus Arendt
* qrilka/patch-2/typo-fix: Minor misprints correction
2014-10-21ssh: prepare for releaseHans Nilsson
2014-10-21ssh: avoid terminated but not deleted children to be counted.Hans Nilsson
2014-10-21erts: Fix bug when hipe tailcalls trapping BIF that disables GCSverker Eriksson
Symptom: base64_SUITE:roundtrip crashes with hipe compiled stdlib. Problem: HIPE_WRAPPER_BIF_DISABLE_GC pushed a "trap frame", but the frame was only popped if the call was recursive. Solution: Only reserve "trap frame" if BIF call is recursive.
2014-10-21erts: Fix hipe bug when gc-disabling bif traps with gc enabledSverker Eriksson
The trap_frame got pushed twice, first by the wrapper then by hipe_push_beam_trap_frame as it was looking at F_DISABLE_GC.
2014-10-21ssh: simple info function (ssh_info:print/0).Hans Nilsson
2014-10-21Merge branch 'egil/map-type-opt/OTP-12253'Björn-Egil Dahlberg
* egil/map-type-opt/OTP-12253: compiler: Type is_nonempty_list optimization compiler: Type map optimization
2014-10-21Merge branch 'maint'Peter Andersson
2014-10-21Merge branch 'peppe/common_test/crash_during_close' into maintPeter Andersson
* peppe/common_test/crash_during_close: Solve memory consumption problem Fix problem with buffered async io messages executed too late Don't generate weird exit if ct_logs has terminated before shut down OTP-12159
2014-10-21dialyzer: remove recognition of the compiler option 'asm'Hans Bolinder
The compiler option 'asm' has been replaced by 'from_asm' in Erlang/OTP 18.0.
2014-10-21debugger: clean up Common Test adaptionHans Bolinder
The ct_line module was removed some releases ago.
2014-10-21Prepare releaseErlang/OTP
2014-10-21Merge branch 'rickard/eager-check-io/OTP-12117' into maint-r16Erlang/OTP
* rickard/eager-check-io/OTP-12117: Introduce support for eager check I/O scheduling
2014-10-20Merge branch 'lukas/erts/non-blocking-shell'Lukas Larsson
* lukas/erts/non-blocking-shell: Fix io:columns/0 timeout when invoked via user kernel,ssh: Add synchronous user_drv protocol erts: Make writing to non-tty fds non-blocking erts: Make tty driver non-blocking
2014-10-20Add upgrade test in stdlib_SUITESiri Hansen
...using ct_release_test:upgrade/4
2014-10-20[ct] Add ct_release_tests.erlSiri Hansen
This is a library module for testing release related functionality in one or more applications. The first version of ct_release_tests include test of upgrade only. Note that the hipe application does not support any upgrade, and typer and dialyzer requires hipe, so these three applications are always exluded from the test.
2014-10-20New function supervisor:get_childspec/2Siri Hansen
Takes the name of the child (or Pid, in the case of a simple_one_for_one supervisor) and returns the map which specifies the child.
2014-10-20Allow maps for supervisor flags and child specsSiri Hansen
Earlier, supervisor flags and child specs were given as tuples. While this is kept for backwards compatibility, it is now also allowed to give these parameters as maps: -type sup_flags() :: #{strategy => strategy(), % optional intensity => non_neg_integer(), % optional period => pos_integer()} % optional -type child_spec() :: #{id => child_id(), % mandatory start => mfargs(), % mandatory restart => restart(), % optional shutdown => shutdown(), % optional type => worker(), % optional modules => modules()} % optional Default values are as follows: Supervisor flags: strategy: one_for_one intensity: 1 period: 5 Child specs: restart: permanent type: worker shutdown: 5000 for workers, 'infinity' for supervisors modules: [M], where M comes from the child's start {M,F,A} Some of these default values are quite hard to decide on, since there really is no "most common way". It always depends on the use case. So we decided that the most important reason for having default values is to lower the start barrier and get "something" running. For production use, most systems must be fine tuned in this respect anyway. This is how we reasoned about it: Strategy: just pick one - and 'one_for_one' was most used in OTP. Max restart frequency (intensity/period): by allowing one restart only we keep the important supervisor feature of restarting children, but we also avoid the possibility of scaling to a huge amount of restarts if the supervisor tree is deep. Restart: just pick one - and 'permanent' is fairly common. Shutdown for workers: to avoid the confusion of why the terminate function is not executed, we decided not to use 'brutal_kill'. Which number to use is probably not that important, so we chose 5000. Shutdown for supervisors: the recommended shutdown value for supervisors is 'infinity', so we decied to use that. Having the same (integer) value as for workers can give very strange results. Type: just pick one - and we believe that 'worker' is most common
2014-10-20[sasl] Remove undocumented upgrade instructionSiri Hansen
The upgrade instruction 'remove_module' was added in OTP R7B (and possibly in a patch in R5B or R6B, ticket OTP-3477), and translates to the low level instruction 'remove', but adds the parameter DepMods (modules on which Mod is dependent). The ticket says that "remove_module should be added for symmetry with the add_module instruction". remove_module was never documented or tested, and it was never mentioned in a release note. It therefore seems to be low risk in removing it. The correct instruction to use when removing a module is {delete_module,Mod} which was added in OTP R10B and which is also documented and tested. This translates to low level instructions 'remove' and 'purge' i.e. the module is brutally purged after setting the current code to old. This hardcoded brutal purge is the reason why PrePurge and PostPurge parameters can not be given with the delete_module instruction. The parameter DepMods which was inclued in the remove_module instruction does not exist for delete_module. From the documentation's point of view, this is the same for add_module, and thus the two instructions {add_module,Mod} and {delete_module,Mod} are now symmetric. However, in the code there is a second instruction for adding a module, {add_module,Mod,DepMods}, which is not documented. To add symmetry even for this, {delete_module,Mod,DepMods} is now also added. Documentation is added for all instructions.
2014-10-20Merge branch 'tuncer/compiler/finalize-asm-deprecation/OTP-12100'Björn Gustavsson
* tuncer/compiler/finalize-asm-deprecation/OTP-12100: compiler: finalize 18.x 'asm' deprecation
2014-10-20Merge branch 'maint'Björn Gustavsson
* maint: BER decoding: Don't allow primitives with indefinite lengths
2014-10-20Merge branch 'bjorn/asn1/primitive-indefinite-length/OTP-12205' into maintBjörn Gustavsson
* bjorn/asn1/primitive-indefinite-length/OTP-12205: BER decoding: Don't allow primitives with indefinite lengths
2014-10-20Merge branch 'maint'Bruce Yinhe
2014-10-20Merge branch 'adelzhang/fix_application_master_comment' into maintBruce Yinhe
* adelzhang/fix_application_master_comment: Fix obsolete comment
2014-10-20eldap: Add support for modifying passwordsDaniel White
This implements the LDAP Password Modify Extended Operation (RFC 3062) with two new functions modify_password/3 and modify_password/4. The former is for directly setting passwords, and the latter is for users to change their own passwords. Since all three parameters are optional, I've opted to support this with the empty string rather than a property list. This seems consistent with other functions in the module (i.e. modify_dn/5).
2014-10-19Fix bug in FreeBSD topology detection codePaul Guyot
Code incorrectly relied on undefined C behavior. Clang and gcc 4.9 do not behave as code expected. This affected cores and processors detection on FreeBSD.
2014-10-17wx: Fix typo in graphicsContext exampleJosh Adams
2014-10-17Clarify the use of SIGUSR1 for forcing crash dumpsSteve Vinoski
The crash_dump document mentions indirectly that delivering a SIGUSR1 to a running emulator process can force it to crash dump. Clarify that text to make it clear SIGUSR1 can be used for that purpose, and also add a similar note about using SIGUSR1 to the erl documentation.