Age | Commit message (Collapse) | Author |
|
make erlang:process_info/1 not retrieve messages
|
|
Conflicts:
OTP_VERSION
|
|
|
|
Allow multiple modifier characters in io:format control sequences
OTP-14971
|
|
This makes it possible to print unicode atoms at the same time as
suppressing detection of printable lists.
|
|
process_info/1 retrieves a number of properties related to a process,
including the list of messages in its mailbox. This is potentially
unsafe if the target process has a large number of queued messages:
- there is no a priori upper bound on the amount of memory being
allocated to hold that list, and
- the loop to retrieve the messages is uninterruptible, so the
Erlang scheduler where this executes blocks for the duration
We've seen process_info/1 bring down heavily loaded nodes on more
than one occasion. At least once it appeared to have blocked the
Erlang heart process from executing, causing the external heart to
kill the VM.
Consequently this removes 'messages' from the list of process_info
tags to retrieve for process_info/1. Note that process_info/1 still
retrieves 'message_queue_len', and process_info/2 can still retrieve
'messages' when asked to.
A few places in the OTP libraries need minor adjustments, since they
want 'message_queue_len' but compute it from the length of the list
of messages.
|
|
|
|
|
|
Make io_lib:unscan_format/1 work with pad char and default precision
OTP-14958
|
|
Improve handling of maps. Addendum to b57e890.
|
|
Improve documentation of io:format ~p when Unicode is involved
|
|
|
|
Optimization does not trigger for try-catch.
But send cannot fail here anyway, as Process cannot be an atom.
|
|
as workarounds to avoid blocking auto-connect,
which is now asynchronous in OTP-21.
Also changed old catch to more efficient try-catch.
|
|
as fallback when erlang:monitor failed toward primitive nodes,
which it does not do in OTP-21.
|
|
Fix typo in erl_tar:format_error/1 docs
|
|
|
|
|
|
* lukas/kernel/fix_os_cmd_max_size_win32/OTP-14940:
stdlib: Fix doc link in timer
kernel: Fix handling of os:cmd option max_size in win
|
|
|
|
* maint:
ERL-558 Add the missing function clause for string:prefix (#1702)
|
|
OTP-14942
|
|
|
|
* peterdmv/stdlib/improve_uri_string_api/OTP-14910:
stdlib: Update uri_string documentation (HTML 5.2)
stdlib: Improve URI normalization in uri_string
Change-Id: I1b85e125ae3bc64e04b04ab884ca603217123167
|
|
* john/erts/binary-bin_to_list-performance-fix/OTP-14741:
Replace binary:bin_to_list CIF implementation with binary_to_list
|
|
* maint:
Skip testing unavailable interfaces in inet_SUITE:getifaddrs
Make re_SUITE:sub_binaries less unstable
|
|
The small sub-binary conversion trick in the GC broke this test
pretty often on some machines.
|
|
binary:bin_to_list had a poor implementation that resulted in
excessive garbage collection. binary_to_list is almost identical and
has a generally better implementation, so I've replaced
binary:bin_to_list's CIF with a thin wrapper around binary_to_list.
Granted, binary_to_list has a deprecated indexing scheme, but we're
unlikely to ever remote it entirely and it's somewhat easy to move
it to the 'binary' module later on.
|
|
dialyzer: Compute MD5s using the .beam file (OTP-14937)
|
|
Add ets:whereis/1 for resolving table names -> tid()
|
|
* maint:
stdlib: Correct a minor epp bug
|
|
* raimo/stdlib/rand-polish-stat-tests:
Decrease tolerance a wee bit
Repeat stat tests to only fail for systematic errors
Fix histogram and outlier checks
|
|
|
|
|
|
|
|
The bug was introduced in 87a0af4 (R18).
|
|
|
|
|
|
|
|
|
|
- Original link to HTML 5.0 specification was broken as the
document was moved when later revisions were released.
- Form-urlencoded query string handling conforms to the
HTML 5.2 specification that references WHATWG URL
(10 Jan 2018).
- HTML 5.2 does not specify handling of non-UTF-8
form-urlencoded query strings, but it is still supported
as described in HTML 5.0.
Change-Id: I44603bb501530b16651ecbb9a26ea64e119f83d9
|
|
* maint-20:
Updated OTP version
Update release notes
Update version numbers
erts: Add system_flags(erts_alloc,"+M?sbct *")
erts: Add age order first fit allocator strategies
erts: Refactor erl_ao_firstfit_alloc
erts: Add migration options "acnl" and "acfml"
kernel: Add os:cmd/2 with max_size option
erts: Add more stats for mbcs_pool
erts: Fix alloc_SUITE:migration
stdlib: Make ets_SUITE memory check try again
erts: Improve carrier pool search
erts: Improve alloc_SUITE:migration
erts: Refactor carrier dealloc migration
|
|
into 'sverker/master/alloc-n-migration/ERIERL-88'
|
|
into 'sverker/maint-20/alloc-n-migration/ERIERL-88'
OTP-14915
OTP-14916
OTP-14917
OTP-14918
|
|
- normalize/1 accepts uri_map() as input type and can return
error() if URI parsing fails.
- Added normalize/2 that can return a normalized uri_map().
Change-Id: Icdd2e60c15019d3eec2e7bc994cae03066a79194
|
|
* hasse/no_get_stacktrace/OTP-14861:
erts: Update abstract format doc with stacktrace variable
wx: Do not call erlang:get_stacktrace()
tools: Do not call erlang:get_stacktrace()
stdlib: Do not call erlang:get_stacktrace()
sasl: Do not call erlang:get_stacktrace()
runtime_tools: Do not call erlang:get_stacktrace()
reltool: Do not call erlang:get_stacktrace()
parsetools: Do not call erlang:get_stacktrace()
observer: Do not call erlang:get_stacktrace()
mnesia: Do not call erlang:get_stacktrace() (cont)
mnesia: Do not call erlang:get_stacktrace()
kernel: Do not call erlang:get_stacktrace()
inets: Do not call erlang:get_stacktrace()
eunit: Do not call erlang:get_stacktrace()
et: Do not call erlang:get_stacktrace()
dialyzer: Do not call erlang:get_stacktrace()
debugger: Do not call erlang:get_stacktrace()
debugger: Do not try to restore stacktrace
common_test: Do not call erlang:get_stacktrace()
|
|
|
|
* emj/stdlib/tar-repro/PR-1608/OTP-14834:
Add options for creating reproducible tars
Return error when unable to make dir
|
|
|
|
|