Age | Commit message (Collapse) | Author |
|
* sverker/erts/trap_exit-race/OTP-13452:
erts: Fix race for process_flag(trap_exit,true)
|
|
* rickard/proc-free-fix/OTP-13446:
Fix bad refc management of process struct
# Conflicts:
# erts/emulator/beam/erl_process.c
|
|
* rickard/port-sig-dropped-fix/OTP-13424:
Fix implementation of dropped signal to port
|
|
* dgud/mnesia/hang-sym-trans/OTP-13423:
mnesia: Send mnesia_down messages to waiting transactions
|
|
* rickard/ethr-event-futex-wait-timeout/OTP-13420:
Fix premature timeouts for ethread events on Linux
|
|
* rickard/last_calls/OTP-13418:
Unbreak process_info(Pid,last_calls)
|
|
* lukas/erts/fix_enomem_error_code/OTP-13419:
erts: Create erl_crash.dump when out of memory
|
|
* ia/inets/bracket-option/OTP-13417:
inets: Prepare for release
inets: Mend ipv6_host_with_brackets option
|
|
and a concurrent exit signal.
We now actually guarantee that the process will not die
from exit signal *after* the call to process_flag(trap_exit,true)
has returned.
The race is narrow and probably quite hard to observe even if you
manage to provoke it. Has only been confirmed with the help of
return trace and a sleep in send_exit_signal().
Solution:
Seize status lock to prevent send_exit_signal() from reading
an old status (without TRAP_EXIT) and then writing PENDING_EXIT
after TRAP_EXIT has been set by process_flag_2().
|
|
|
|
Those clause are obsolete and never used by common_test.
|
|
|
|
|
|
|
|
|
|
|
|
* For maps:get/2,3 and maps:find/2, searching for an immediate key, e.g. an atom,
the search was performed twice if the key did not exist in the map.
|
|
|
|
* sa/specs-for-callbacks:
Add documentation about -specs for callbacks
|
|
|
|
|
|
* bjorn/kernel/doc:
code: Remove 'bad_path' error code from set_path/1
Update Kernel documentation
|
|
* rickard/proc-free-fix/OTP-13446:
Fix bad refc management of process struct
Conflicts:
erts/emulator/beam/erl_process.c
|
|
|
|
|
|
|
|
|
|
We don't want otp_internal to only grow, and grow, and grow...
|
|
The mentioned functions in erl_internal and erl_eval was removed
a long time ago.
|
|
code:set_path/1 no longer returns {error,bad_path} (an exception
will be thrown instead).
|
|
Language cleaned up by technical writers from Combitech.
Proofreading and corrections by Björn Gustavsson and
Hans Bolinder.
|
|
* sstrigler/ct_logs_add_blank:
Add blank before dots
|
|
Update application versions for kernel, stdlib and sasl for OTP-19.
|
|
* bjorn/optimize-start-up/OTP-13368:
reltool_server_SUITE: Correct diffing of start scripts
|
|
In c3c6182, systools was updated to add more modules to be pre-loaded
along with error_handler. That is a pure optimization.
Because of the extra modules, test cases that compared the start
scripts generated by SASL with the ones generated by Reltool
would fail.
We must implement a more elaborate way to diff the scripts.
|
|
62473daf introduced an unsafe optimization in the loader.
See the comments in the test case for an explanation of
the problem.
|
|
|
|
|
|
|
|
|
|
Bug introduced on master in a31eab5469b7740d.
|
|
In 9870d22b2401b, the timetrap for large_write/1 was accidentally
reduced from the default 30 minutes to only 1 minute. That is not
enough for some older computers.
|
|
abnormal1/1 started failing sporadically when 22785cd1e21
changed using the messages_get/0 and using its own implementation:
get_messages() ->
receive
Msg -> [Msg|get_messages()]
after 1 -> []
end.
In test_server:messages_get/0, there was "after 0" instead of "after
1" as in this version.
We could change back to using "after 0", but it seems that the
test case just happened to work before the change.
Instead, read out the message that is guranteed to be in the message
queue, and *then* check that the message queue is empty.
|
|
In 8d7d5627, test_server:sleep/1 was changed to ct:sleep/1.
Change it to timer:sleep/1 to make the timing more exact
(ct:sleep/1 will call another process).
|
|
Allow an open operation to fail with {error,enoent}. That will
happen if the executable has compiled-in support for netns,
but the computer has not been configured for netns.
|
|
by not repeating calls to get static EVP_MD and EVP_CIPHER objects.
Also compressed the structs with unions
for better caching during search.
|
|
and not badarg.
|
|
Suppose we have some erlang system that uses systemd unit with
Type=notify - so this should send startup confirmation itself. But if
systemd-enabled epmd will be started as a first step of that system
startup, empd startup confirmation will be misinterpeted by systemd. And
our erlang service will be considered 'ready' to early. Also this will
interefere with systemd MAINPID detection: systemd will be monitoring
`epmd` process instead of `beam` one.
For example, rabbitmq works around this issue by starting epmd using
separate short-lived beam process, with NOTIFY_SOCKET environment
variable reset - only in this way we could be sure that epmd will not
interfere with rabbit startup sequence.
This patch disables indiscriminate confirmation sending, and does it
only when it was explicitly asked to do so.
|
|
* lukas/erts/etp-bigendian-pid-fix:
erts: Fix etp pid print on big endian
|
|
* lukas/kernel/sendfile_fallback_chunksize_adj/OTP-13444:
kernel: Reduce sendfile fallback chunk size
|