aboutsummaryrefslogtreecommitdiffstats
AgeCommit message (Collapse)Author
2018-05-08erts: Make ets:delete_all_objects yield on fixed tableSverker Eriksson
2018-05-08erts: Optimize ets delete all in fixed tableSverker Eriksson
by only allocating one FixedDeletion with the new "all" flag instead of one FixedDeletion per slot.
2018-05-08erts: Refactor ets select iteration codeSverker Eriksson
* Remove all "mtraversal_" prefixes. * Rename all local context variables as "ctx". * Changed callbacks from function arguments to members of new base context struct "match_callbacks_t" * Remove unnecessary struct initializations "= {0}"
2018-05-08erts: Cleanup ets codeSverker Eriksson
2018-05-08erts: Optimize ets hash object deallocactionsSverker Eriksson
to be done after lock has been released.
2018-05-08erts: Refactor pseudo deleted ets objectsSverker Eriksson
Separate pseudo-deleted-flag from the hash value.
2018-05-08erts: Make atomic ets:delete_all_objects yieldSverker Eriksson
by using a cooperative strategy that will make any process accessing the table execute delelete_all_objects_continue until the table is empty. This is not an optimal solution as concurrent threads will still block on the table lock, but at least thread progress is made.
2018-04-25erts: Fix reduction bump for ets:delete/1Sverker Eriksson
2018-04-23Merge branch 'sverker/valgrind-uninit-run_queue-ptr'Sverker Eriksson
* sverker/valgrind-uninit-run_queue-ptr: erts: Fix run queue pointer in proxy process
2018-04-23Merge branch 'sverker/ets-cherries/OTP-15031'Sverker Eriksson
* sverker/ets-cherries/OTP-15031: erts: Use table ref for select continuation erts: Refactor erl_db_hash next() into next_live() erts: Change wrong alloc_fnf
2018-04-23Merge branch 'hans/ssh/remove_dead_files/OTP-15028'Hans Nilsson
* hans/ssh/remove_dead_files/OTP-15028: ssh: Remove unused ssh_client_key.erl and ssh_server_key.erl
2018-04-23Merge branch 'lukas/erts/seq_tracer_nif/OTP-15029'Lukas Larsson
* lukas/erts/seq_tracer_nif/OTP-15029: Fix seq_trace erl_tracer bug Fix makefile mkdir warning
2018-04-23Merge branch 'john/erts/fix-sbwt-links'John Högberg
* john/erts/fix-sbwt-links: Fix seealso tags for +sbwt/+swt
2018-04-20erts: Use table ref for select continuationSverker Eriksson
and not the name. For more sane named table semantics. Applies to both select/1 continuation and trap context.
2018-04-20erts: Refactor erl_db_hash next() into next_live()Sverker Eriksson
where argument 'list' is the first candidate (not list->next). Also simplified db_first_hash().
2018-04-20erts: Change wrong alloc_fnfSverker Eriksson
There is no NULL check here !?
2018-04-20ssh: Remove unused ssh_client_key.erl and ssh_server_key.erlHans Nilsson
2018-04-20Merge PR-1792 from saleyn/float_to_listSverker Eriksson
Optimize performance of float_to_list/2
2018-04-20Fix seealso tags for +sbwt/+swtJohn Högberg
2018-04-20erts: Fix run queue pointer in proxy processSverker Eriksson
proc->run_queue detected as uninitialized by valgrind but seems harmless in practice as it's not used for proxy processes. "Bug" introduced in OTP-17 by ca0425c6ff85262bc15367f5fd9cbc51cde52b20 and made worse (but still harmless) in master for OTP-21 at fbb10ebc4a37555c7ea7f99e14286d862993976a.
2018-04-20Update primary bootstrapBjörn Gustavsson
2018-04-20Merge pull request #1783 from bjorng/bjorn/deprecate-get_stacktrace/OTP-14692Björn Gustavsson
Deprecate erlang:get_stacktrace/1
2018-04-20Merge branch 'maint'Hans Nilsson
* maint: Updated OTP version Prepare release inets: Fix broken httpc options handling ssh: Fix server crashes for exit-normal signals ssh: Fix ssh_sftpd:handle_op not returning State Conflicts: OTP_VERSION
2018-04-20Merge branch 'maint-20' into maintHans Nilsson
* maint-20: Updated OTP version Prepare release erl_interface: Optimize latin1_to_utf8 and friend inets: Fix broken httpc options handling erl_interface: Fix ei_connect ssh: Fix server crashes for exit-normal signals ssh: Fix ssh_sftpd:handle_op not returning State ic: Optimize oe_ei_encode_atom
2018-04-20Merge branch 'sverker/master/optimize-atom-enc-dec/ERIERL-150'Sverker Eriksson
2018-04-20Merge branch 'sverker/erl_interface/ei_connect-erange-fix/OTP-15022'Sverker Eriksson
2018-04-20Merge pull request #1791 from bjorng/bjorn/erts/backtrace_depth/OTP-15026Björn Gustavsson
Make stacktraces consistent when backtrace_depth is 0
2018-04-19erts,erl_interface: Refactor common config of ARCHSverker Eriksson
into aclocal.m4 as LM_HARDWARE_ARCH
2018-04-19Merge 'sverker/optimize-atom-enc-dec/ERIERL-150/OTP-15023'Sverker Eriksson
into master as'sverker/master/optimize-atom-enc-dec/ERIERL-150'
2018-04-19Optimize performance of float_to_list/2Serge Aleynikov
2018-04-19Updated OTP versionOTP-20.3.4Erlang/OTP
2018-04-19Prepare releaseErlang/OTP
2018-04-19Merge branch 'sverker/optimize-atom-enc-dec/ERIERL-150/OTP-15023' into maint-20Erlang/OTP
* sverker/optimize-atom-enc-dec/ERIERL-150/OTP-15023: erl_interface: Optimize latin1_to_utf8 and friend ic: Optimize oe_ei_encode_atom
2018-04-19Merge branch 'sverker/erl_interface/ei_connect-erange-fix/OTP-15022' into ↵Erlang/OTP
maint-20 * sverker/erl_interface/ei_connect-erange-fix/OTP-15022: erl_interface: Fix ei_connect
2018-04-19Merge branch 'peterdmv/httpc_options_handling/ERL-441/OTP-15007' into maint-20Erlang/OTP
* peterdmv/httpc_options_handling/ERL-441/OTP-15007: inets: Fix broken httpc options handling
2018-04-19Merge branch 'hans/ssh/server_exit_normal_exit_20/OTP-15018' into maint-20Erlang/OTP
* hans/ssh/server_exit_normal_exit_20/OTP-15018: ssh: Fix server crashes for exit-normal signals
2018-04-19Merge branch 'hans/ssh/sftpd_rm_dir_err_20/OTP-15004' into maint-20Erlang/OTP
* hans/ssh/sftpd_rm_dir_err_20/OTP-15004: ssh: Fix ssh_sftpd:handle_op not returning State
2018-04-19erl_interface: Optimize latin1_to_utf8 and friendSverker Eriksson
to do word wise check/copy for pure ASCII if ARCH allows it (x86 and amd64).
2018-04-19Merge branch 'hans/ssh/cuddle_tests'Hans Nilsson
* hans/ssh/cuddle_tests: ssh: Declare serial for three test cases ssh: Increase timetrap for slow test machines
2018-04-19Merge branch 'bjorn/compiler/core_lint'Björn Gustavsson
* bjorn/compiler/core_lint: core_lint: Handle repeated variables in map patterns correctly
2018-04-19ssh: Declare serial for three test casesHans Nilsson
2018-04-19ssh: Increase timetrap for slow test machinesHans Nilsson
2018-04-19inets: Fix broken httpc options handlingPéter Dimitrov
- Add support for setting socket options per request. - Add http_ipv6 test group. Change-Id: Ia2aca37c0b5fe64a41995c79ae3399434b17ab8a
2018-04-19Make stacktraces consistent when backtrace_depth is 0Björn Gustavsson
It is allowed to set the backtrace depth to 0, but when an exception is catched the stacktrace will still contain one element: 1> erlang:system_flag(backtrace_depth, 0). 8 2> catch error(badarg). {'EXIT',{badarg,[{shell,apply_fun,3, [{file,"shell.erl"},{line,908}]}]}} However, when an exception is raised using `erlang:raise/3`, there will be no elements in the stacktrace: 3> catch erlang:raise(error, badarg, [{fake,name,[arg],[]}]). {'EXIT',{badarg,[]}} Since the `error_handler` module uses `erlang:raise/3` to raise an exception when an undefined function is called, there will not be any stacktrace when calling an undefined function: 4> catch undef_module:undef_name(some_argument). {'EXIT',{undef,[]}} Fix this inconsistency by changing `erlang:raise/3` so that it always includes one element in the stacktrace: 3> catch erlang:raise(error, badarg, [{fake,name,[arg],[]}]). {'EXIT',{badarg,[{fake,name,[arg],[]}]}} 4> catch undef_module:undef_name(some_argument). {'EXIT',{undef,[{undef_module,undef_name,[some_argument],[]}]}}
2018-04-19Merge branch 'dgud/wx/glcanvas-improvements'Dan Gudmundsson
* dgud/wx/glcanvas-improvements: Add new "constants" to wxGLCanvas
2018-04-19Merge pull request #1768 from dgud/dgud/wx/build-on-wxW-311Dan Gudmundsson
Allow building with wxWidgets-3.1.1 OTP-15027
2018-04-19Merge branch 'maint'Siri Hansen
* maint: Updated OTP version Prepare release Update appup file for sasl Fix bug in hybrid boot file used for restart_new_emulator Conflicts: OTP_VERSION lib/sasl/src/sasl.appup.src
2018-04-19Merge branch 'maint-20' into maintSiri Hansen
* maint-20: Updated OTP version Prepare release Update appup file for sasl Fix bug in hybrid boot file used for restart_new_emulator
2018-04-19Merge pull request #1789 from ↵Lukas Larsson
christhekeele/remove-trace-terms-from-table-types-in-match-docs Remove trace-specific terms from docs for table-oriented matchspecs
2018-04-19Remove trace-specific terms from docs for table-oriented matchspecsChris Keele
This removes the matchspec instructions `is_seq_trace` and `get_tcw/0` from the documentation for table-oriented matchspecs. This is likely correct as both are already documented under "Functions Allowed Only for Tracing", despite appearing in the list of possible options for table specs. The following observations further back this change up: ```erl erlang:match_spec_test([whatever], [{'_', [], [{is_seq_trace}]}], trace). %=> {ok,true,[],[]} erlang:match_spec_test({whatever}, [{'_', [], [{is_seq_trace}]}], table). %=> {error,[{error,"Special form 'is_seq_trace' used in wrong %dialect."}]} erlang:match_spec_test([whatever], [{'_', [], [{get_tcw}]}], trace). %=> {ok,true,[],[]} erlang:match_spec_test({whatever}, [{'_', [], [{get_tcw}]}], table). %=> {error,[{error,"Function get_tcw/0 cannot be called in this context."}]} ```