Age | Commit message (Collapse) | Author |
|
Avoid cach validation with file:file_info/2 as this i too expensive and
causes a bottleneck in the file server. Instead we expose a new API function
ssl:clear_pem_cache/0 to deal with the problem. As we think it will be
of occasional use and the normal case is that the cache will be valid we think
it is the right thing to do.
Convert file paths to binary representation in the ssl API module to
avoid uncessarry calls in file later on.
Also add sanity checks for openssl versions in testsuite due to new
openssl bugs.
|
|
|
|
Instance of state variable that are "updated" in a function is called
for example State0 and the last instance, that should be returned, is
called State possible intermidiat versions are suffixed by increasing
numbers. State0 may be rturned in error cases.
Avoid nesting case statments.
|
|
Aviods storing a lot of data
|
|
Only use ssl_manager for selecting new ids to guarantee uniqueness,
but reuse check does not need to be performed by the manager.
|
|
The session id keept in the connection processes state must be updated to be
the id selected by ssl_handshake:client_hello, failing to do so will
cause a crash if the session is not reused.
|
|
So we can use partial bound keys for matching
|
|
Do not use ssl_manager process for selecting an id. It's unnecessary
to involve the manager process at all on the client side.
|
|
|
|
This is done by using proc_lib and gen_fsm:enter_loop
so that supervisor will not have to wait for the relative long initialization
of an ssl connection process before starting another connection process.
|
|
* bjorn/remove-hybrid-heap/OTP-10105:
Remove stale code for hybrid heap and incremental GC
Remove the hipe_bifs:show_message_area/0 BIF
Remove support for erlang:system_info(global_heaps_size)
Remove the erlang:garbage_collect_message_area/0 BIF
Remove workarounds for hybrid and shared heaps in test suites
|
|
* hb/dialyzer/solver_fix/OTP-10082:
Bug fixes and improvements of dialyzer_typesig
|
|
1. Sometimes the solver forgot that a list had entered the error
state. The bug has been fixed by storing the atom 'error' in
MapDict. An example where the bug occurred is
io_lib_pretty:printable_bin(). The returned spec was weaker than it
should have been, but the fix-point loop hid the bug (in this case).
2. lists:partition() has been substituted for lists:splitwith() in
enumerate_constraints(). This fix together with 3. solves a
problem with long execution times for deeply nested fun:s. An
example which is now much faster is
lib/compiler/test/lc_SUITE:deeply_nested/1
(included as dialyzer/test/small_SUITE_data/src/deep_lc.erl).
3. The calculation of components in enumerate_constraints() has been
simplified and optimized. The important thing here is that _all_ of
the simple constraints have been saturated before entering the
complex part.
4. The pretty printing of constraints has been improved.
|
|
* raimo/erts/win-install-redist-mixup/OTP-10096:
erts: Make 64-bit installer look for MS Redistributable in the right places
|
|
* lukas/stdlib/ensure_dir_infinite_loop/OTP-10104:
Fix infinite loop when an invalid drive letter it given
|
|
* lukas/test-cases:
Ignore calls to wx* modules if it is undefined
Fix erl_interface testcases
Update gccifier to respect -link option
Extand timetrap for escript tests
Fix compilation issues on windows and Ubuntu 12.04
Ignore common_test bootstrap
|
|
|
|
* sa/dialyzer-parallel: (54 commits)
Logfile-like statistics (enabled with --resources)
Anonymous SCCtoPID ETS table
Anonymous time server
Regulate all kinds of running workers up to the number of schedulers
Relocate start and stop of timing server
Better names for callgaph ETS tables
Remove needless conversion
Fix types and specs
Inline a function in dialyzer_worker
Remove unused function
Change --time to --statistics and include more info
Better reflect side-effect based code in dialyzer_callgraph
Code simplifications (tidier)
More efficient calculation of module deps and postorder
Solve big SCC constraints in parallel
Coordinator is no longer a separate process
All spawns are now spawn_links
Fix race in coordinator
Typesig and dataflow analyses no longer use ticket regulation
Plain concatenation for typesig not-fixpoint list
...
OTP-10103
|
|
* gustav/compile/docs-file-macro-option2:
Add type info for compile:file/1,2 macro option
|
|
|
|
* gustav/os_mon/disksup_call_timeout/OTP-10100:
Add infinity timeout to os_mon calls
|
|
* lukas/fix_windows_release_tests/OTP-10099:
Fix compilation of examples and tc names on windows
Create erl.ini for host emulator
|
|
* lukas/kernel/sendfile_fallback_fix/OTP-10098:
Fix chunk usage check
|
|
|
|
|
|
|
|
|
|
|
|
|
|
* sverk/valgrind-async-thr-suppression:
erts: Add valgrind suppression for async thread bound data
|
|
|
|
The installer runs in 32-bit mode so 64-bit windows does not
show it the system directories a 64-bit application will see.
To find out if the MS C++ 2010 Redistributable Package is
installed the installer for 64-bit Erlang must search
for msvcr100.dll in:
$WINDIR\sysnative\ $WINDIR\WinSxS\amd64*\
instead of for 32-bit Erlang
$SYSDIR\ $WINDIR\WinSxS\x86*\
This patch also makes the installer if called in silent mode
call the MS Redistributable installer in silent mode.
|
|
* raimo/tools/remove-fprof-tuple-funs/OTP-10091:
tools: Bump version
tools: Remove usage of tuple funs in fprof
|
|
|
|
* lukas/kernel/fix-gen_udp_tcp-leak/OTP-10094:
Add testcase for controlling_process(P,self())
Fix port leaking after controlling_process(Port, self())
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
The final version of the callgraph needs not be "reduced" for more efficient
copying.
|
|
|
|
|
|
|
|
|
|
|