Age | Commit message (Collapse) | Author |
|
|
|
This fixes a bug introduced in f11aabdc9fec593c31e6c4f3fa25c1707e9c35df where
filelib:eval_read_file_info/2 was made to use file:read_link_info/1 to never
follow symlinks. This fixed wildcard/1 but broke every other function using
eval_read_file_info/2.
Reported-by: Louis-Philippe Gauthier
Reported-by: Danil Zagoskin
|
|
* mikpe/openfile-dont-use-undefined-statbuf:
Fix efile_openfile() to handle stat() failure
|
|
* fenek/fix/vstudio_macro:
Add Visual Studio macros to erl_driver.h and ei.h
|
|
* lukas/erts/git_vsn_script_fix/OTP-11961:
erts: Fix git version script
|
|
|
|
|
|
|
|
* sverk/etp-block-fix:
erts: Fix bug in etp-block commands
|
|
If the initial stat() fails then efile_openfile() will still proceed
to open() the file. If that succeeds and the caller passed a non-NULL
pSize, then it will copy bogus data from the statbuf into *pSize. This
has been observed to cause file:read_file/1 to return truncated file
data with no error indication.
The use case involved a large file system mounted via NFS, with some
directories containing large number of files, and NFS mount options
that allow the NFS client to return EIO if the NFS server does not
respond quickly enough. Depending on the caching state of the client
and server machines, a few stat() calls (fewer than 1 per 10 million)
would take long enough to trigger EIO errors, but subsequent open()
calls would succeed, and read_file/1 would return truncated data. This
sequence of events has been observed via "strace" on beam.smp.
Signed-off-by: Mikael Pettersson <[email protected]>
|
|
* egil/fix-erts_debug-size/OTP-11923:
erts: Update preloaded erts_internal.beam
erts: Add spec for erts_internal:map_to_tuple_keys/1
erts: Add testcase for erts_debug:size/1 Map terms
kernel: Fix erts_debug:size/1 to handle Map sizes
erts: Add erts_internal:map_to_tuple_keys/1
|
|
|
|
|
|
|
|
* lukas/erts/autoconf-fixes/OTP-11921:
erts: Fix various autoconf issues
|
|
* Check of atomics on bsd
* Add --enable-systemd for epmd
* Remove unused --enable-tsp option
|
|
* bjorn/erts/fix-eval/OTP-11916:
The encoding for '-eval Program' should be UTF-8
|
|
|
|
* bjorn/erts/spawn_opt-doc/OTP-11849:
Document that spawn_opt/5 does not support the 'monitor' option
|
|
* sverk/ets-delete-unfix-race/OTP-11892:
Fix race between ETS table deletion and unfixation
erts: Add etp commands for alloc_util block and carrier inspection
|
|
* lukas/erts/suspend_assert/OTP-11906:
erts: Fix faulty process suspend assert
|
|
|
|
* lukas/erts/etp-lc-macros/OTP-11904:
erts: Add etp-lc-dump and etp-ppc-stacktrace macro
|
|
|
|
* Used for introspection.
* Will return the internal key tuple if applicable
* Not documented - not for public use
|
|
Symptom: VM crash running mnesia_SUITE
Scenario: Process A terminates while still having fixed table T
and process B "at the same time" deletes table T with ets:delete/1 or
by terminating.
Problem: A table scheduled for deallocation do only have a valid
'common' part. The unfix-table-at-process-exit code tried to read the
hash-specific part of such a table.
Solution: Must back off if DB_DELETE flag is set.
Since: R16B
|
|
* sverk/test-cuddle:
Fix timeout for match_spec_SUITE:otp_9422
|
|
Must receive 'abort' even after loop_runner has finished.
|
|
|
|
etp-block
etp-block2mbc
etp-carrier-blocks
|
|
If file:name_native_encoding() returns 'utf8', any arguments following
the -run option are assumed to be encoded in UTF-8. -eval should
treat is argument the same way.
|
|
Conflicts:
OTP_VERSION
erts/vsn.mk
|
|
|
|
|
|
* rickard/sys_info_spec/OTP-11859:
Fixed type spec of erlang:system_info/1
|
|
* sverk/monitor-large-heap-nosmp/OTP-11852:
erts: Fix system_monitor(large_heap) for non-smp VM
|
|
|
|
No message for large_heap monitoring was ever sent on non-smp VM.
Bug introduced in R16B.
|
|
|
|
* egil/test-cuddling:
tools: Refactor testcase
emulator: Increase timetrap timeout for binary_SUITE
emulator: Increase timetrap timeout for match_spec_SUITE
|
|
as it times out on some machines.
Not much point in redoing with lower input reductions when the terms
are so big we will trap several times anyway.
|
|
|
|
|
|
* rickard/runtime_dependencies_test:
Support for ignoring apps in runtime_dependencies test
|
|
|
|
|
|
* egil/maps-doc:
doc: Add Maps example for sequential programming
doc: Mention map expressions and map guards
doc: Add maps to reference manual
edoc: Add map/0 as a new predefined type
doc: Descripe Maps type syntax
doc: Clearify language of user-defined attributes
doc: Document Maps datatype in reference manual
erts: Document map guard functions
erts: Fix is_map/1 spec
|
|
* sverk/suspend-running-race:
erts: Fix bug of scheduling a suspended process
|
|
* sverk/test-cuddle:
erts: Fix bug in test case port_SUITE:otp_5119
erts: Reduce runtime of test port_SUITE:close_deaf_port
|
|
* vinoski/dirty-nif-purge:
prevent NIF purge during dirty NIF execution
fix dirty NIF invalid memory read
|