Age | Commit message (Collapse) | Author |
|
|
|
* bjorn/stdlib/deprecate-queue-lait/OTP-13658:
Deprecate queue:lait/1
|
|
|
|
* hasse/dialyzer/improve_from_form/OTP-13547:
Update primary bootstrap
stdlib: Correct types and specs
dialyzer: Minor adjustments
dialyzer: Suppress unmatched_return for send/2
dialyzer: Improve the translation of forms to types
dialyzer: Use a cache when translating forms to types
dialyzer: Prepare erl_types:t_from_form() for a cache
dialyzer: Optimize erl_types:t_form_form()
dialyzer: Correct types
syntax_tools: Correct types
erts: Correct character repr in doc of the abstract format
stdlib: Correct types and specs
|
|
It is possible that '...' is added later (OTP 20.0), but for now we
are not sure of all details.
|
|
|
|
|
|
* zandra/test_server/unmatched_returns/OTP-13345:
vts - Fix unmatched_return warnings
test_server_sup - Fix unmatched_return warnings
test_server_node - Fix unmatched_return warnings
test_server_io - Fix unmtached_return warnings
test_server_gl - Fix unmatched_return warnings
test_server_ctrl - Fix unmatched_return warnings
test_server - fix unmatched_return warnings
remove unused purify functions
|
|
* josevalim/supervisor-get-callback-module/PR-1000/OTP-13619:
Return callback module in supervisor format_status
|
|
|
|
The previous implementation of supervisor:get_callback_module/1
used sys:get_status/1 to get the supervisor inner state and
retrieve the callback module. Such implementation forbids any
other supervisor implementation that has an internal state
different than the #state{} record in supervisor.erl.
This patch allows supervisors to return the callback module
as part of the sys:get_status/1 data, no longer coupling the
callback module implementation with the inner #state{} record.
Notice we have kept the clause matching the previous
sys:get_status/1 reply for backwards compatibility purposes.
|
|
This reverts commit e020f75c10410a6943cd055bfa072a2641eab7da.
|
|
|
|
|
|
Seems to be the growing meta tables that is causing increasing
failed memchecks after load factor was lowered.
|
|
from 700% to 200%
|
|
* siri/cuddle-master:
Change ct:sleep to timer:sleep where scaling is not wanted
Don't generate ssh key files in netconf client test
Ignore data received in break mode in test telnet_server
Wait for process to die before next call
Retry ct_telnet:get_data if no data is received after short wait
Don't throw rest of line when NOP is received in test telnet_server
Change ct:sleep to timer:sleep in telnet_server
|
|
* rickard/rt-dep-erts-kernel-stdlib-sasl:
Bumped runtime dependencies between erts, kernel, stdlib, sasl
|
|
* egil/erts/cuddle-tests:
stdlib: Fix small inconsistencies in ets_SUITE
stdlib: Strengthen or relax test cases
kernel: Don't test negative time values in file info
erts: Fix free_mem calculation in bs_construct tests
|
|
* dgud/stdlib/relax-proc_lib-initial-call/OTP-13623:
Relax translation of initial calls
|
|
* kostis/beam_disasm-entry-type/PR-1072:
Declare the type of function entry points
Export label() type
|
|
|
|
In particular, valgrind needs a lot of time for certain tests.
|
|
|
|
|
|
|
|
gen_server_SUITE:start often fails since a call which is expected to
give 'noproc' error instead gives 'stopped' error. This happens when
the call is done before the process is really dead. To overcome this
problem, we now wait for the process exit before doing the call.
|
|
just to make things simpler.
|
|
Remove the restriction to only do the translation for
gen_server and gen_fsm. This enables user defined
gen based generic callback modules to be displayed nicely in
c:i() and observer.
|
|
* josevalim/supervisor-try-again-restart/PR-1001/OTP-13618:
Avoid potential timer bottleneck on supervisor restart
|
|
|
|
* hasse/erl_docgen/datatype_anchors/OTP-13600/ERL-141:
kernel: Remove no longer needed anchors in documentation
stdlib: Remove no longer needed anchors in documentation
erts: Remove no longer needed anchors in documentation
erl_docgen: Add anchors to datatypes without name attribute
|
|
Second merge of this branch to master
with some more docs
|
|
|
|
* mururu/stdlib/fix-deprecated-warnings/PR-1050/OTP-13594:
Fix deprecated warnings
|
|
from ets docs.
|
|
This reverts commit bd64ad8e15d66e48b36dbe3584315dd5cfc8b59a.
|
|
|
|
* raimo/polish-gen_statem/OTP-13065:
Reword 'dispatch' into 'branch depending'
|
|
|
|
* lukas/erts/max_heap_size/OTP-13174:
erts: Fix max heap size exit when in hipe mode
Update preloaded modules
erts: Fix pre-bif yield current_function
erts: Implement max_heap_size process flag
|
|
|
|
The max_heap_size process flag can be used to limit the
growth of a process heap by killing it before it becomes
too large to handle. It is possible to set the maximum
using the `erl +hmax` option, `system_flag(max_heap_size, ...)`,
`spawn_opt(Fun, [{max_heap_size, ...}])` and
`process_flag(max_heap_size, ...)`.
It is possible to configure the behaviour of the process
when the maximum heap size is reached. The process may be
sent an untrappable exit signal with reason kill and/or
send an error_logger message with details on the process
state. A new trace event called gc_max_heap_size is
also triggered for the garbage_collection trace flag
when the heap grows larger than the configured size.
If kill and error_logger are disabled, it is still
possible to see that the maximum has been reached by
doing garbage collection tracing on the process.
The heap size is defined as the sum of the heap memory
that the process is currently using. This includes
all generational heaps, the stack, any messages that
are considered to be part of the heap and any extra
memory the garbage collector may need during collection.
In the current implementation this means that when a process
is set using on_heap message queue data mode, the messages
that are in the internal message queue are counted towards
this value. For off_heap, only matched messages count towards
the size of the heap. For mixed, it depends on race conditions
within the VM whether a message is part of the heap or not.
Below is an example run of the new behaviour:
Eshell V8.0 (abort with ^G)
1> f(P),P = spawn_opt(fun() -> receive ok -> ok end end, [{max_heap_size, 512}]).
<0.60.0>
2> erlang:trace(P, true, [garbage_collection, procs]).
1
3> [P ! lists:duplicate(M,M) || M <- lists:seq(1,15)],ok.
ok
4>
=ERROR REPORT==== 26-Apr-2016::16:25:10 ===
Process: <0.60.0>
Context: maximum heap size reached
Max heap size: 512
Total heap size: 723
Kill: true
Error Logger: true
GC Info: [{old_heap_block_size,0},
{heap_block_size,609},
{mbuf_size,145},
{recent_size,0},
{stack_size,9},
{old_heap_size,0},
{heap_size,211},
{bin_vheap_size,0},
{bin_vheap_block_size,46422},
{bin_old_vheap_size,0},
{bin_old_vheap_block_size,46422}]
flush().
Shell got {trace,<0.60.0>,gc_start,
[{old_heap_block_size,0},
{heap_block_size,233},
{mbuf_size,145},
{recent_size,0},
{stack_size,9},
{old_heap_size,0},
{heap_size,211},
{bin_vheap_size,0},
{bin_vheap_block_size,46422},
{bin_old_vheap_size,0},
{bin_old_vheap_block_size,46422}]}
Shell got {trace,<0.60.0>,gc_max_heap_size,
[{old_heap_block_size,0},
{heap_block_size,609},
{mbuf_size,145},
{recent_size,0},
{stack_size,9},
{old_heap_size,0},
{heap_size,211},
{bin_vheap_size,0},
{bin_vheap_block_size,46422},
{bin_old_vheap_size,0},
{bin_old_vheap_block_size,46422}]}
Shell got {trace,<0.60.0>,exit,killed}
|
|
* raimo/polish-gen_statem/OTP-13065:
Fix all seealso and other minor changes
Editorial update
|
|
|
|
raimo/polish-gen_statem/OTP-13065
Conflicts:
lib/stdlib/doc/src/gen_statem.xml
|
|
* bjorn/stdlib/warning-and-error/OTP-13476:
Add documentation
epp: Add the -error and -warning directives
epp: Refactor expansion of header path
|
|
In current deprecated warnings such as `crypto:rand_bytes/1 is deprecated
and will be removed in in a future release; use crypto:strong_rand_bytes/1`,
the word "in" is duplicated.
|
|
|
|
* raimo/polish-gen_statem/OTP-13065:
Fix documentation
Clean up terminate functions
Fix callback mode after code change not used
Restructure loop_* to clarify S handling
|