Age | Commit message (Collapse) | Author |
|
When the code server has started, it will read the .beam files
for all loaded modules to see whether they contain native code
that should be loaded. To make that as fast as possible when
we have no native code, start the code server as early as possible
to minimize the number .beam files that must be read from disk.
The code server does not use the 'file' module, so it is OK to
start the code server before starting the file_server process.
On my computer, the time for checking the loaded modules for
native code is reduced from roughly 2 ms to 1.5 ms.
|
|
When the code server has been started, the function
load_native_code_for_all_loaded/0 will check whether the .beam
files for all loaded modules contain any native code. If there
is native code, it will be loaded.
If there is no native code, on my computer the check will take about
10 ms. That time can be reduced to about 2 ms if we replace the call
to code beam_lib:chunks/2 with a call to prim_file:read_file/1 to read
the file and a call to code:get_chunk/2 to check whether the chunk for
native code is present.
Furthermore, the entire check can be spawned off to a separate
process and done in parallel with OTP starting up.
|
|
* egil/fix-tmp-alloc-fd-async/OTP-12710:
erts: Use a lockable allocator on 'sys_write_buf'
|
|
* egil/strengthen-dialyzer-tests:
dialyzer: Strengthen maps tests
|
|
|
|
For Rst = A1 * A2, typesig for erlang:'*'/2 was constraining the
arguments A1 and A2 in the 'reverse' direction by requiring that A2 is a
subtype of Rst div A1, unless A1 is a hard zero. This is not correct: if
for example both Rst and A1 are non_negative, such a constraint will
first force A1 to be non-zero for the division to go through and then
require A2 to be non_negative as non_negative div positive =
non_negative, always (see commited test).
In the fixed version, we are not constraining an argument if the other
operand *may* be zero.
|
|
OTP-12708
|
|
* ia/ssh/docs:
ssh: No description in v-tag
ssh: Fix missed alphabetic ordering and indentation
ssh: Use correct ASCII char for quote
ssh: Fix links
|
|
|
|
|
|
|
|
|
|
* joudinet/fix-ac-egrep-cpp-usage:
erts: Fix incorrect use of AC_EGREP_CPP
OTP-12706
|
|
|
|
The send_error testcase tested that Session-Id in an answer-message was
not undefined, but that's always the case since the AVP has arity 0 or
1. The correct test is that it's a list of length 1, to ensure that
diameter has inserted the session id as expected.
|
|
To ensure that the expected answer messages are received.
|
|
Decode of an answer message not setting the E-bit, and containing
Experiment-Result but not Result-Code, identified Result-Code as the
erroneous when Erroneous-Result-Code was 3xxx. Here's an example (from
trace) of a the errors field after decode:
[{5004,
{diameter_avp,undefined,undefined,false,false,undefined,'Result-Code',
3001,undefined,undefined}}],
The diameter_avp was just constructed from the AVP name and decoded
result, without regard for which result code AVP contained the value.
Fix by extracting the AVP from the incoming message.
|
|
* dgud/wx/event-additions/OTP-12660:
wx: Add missing data in events
|
|
Some events where missing useful information.
May require user code recompilation, since some records in wx.hrl
have chnaged it's definition.
|
|
* dgud/wx/optimize-queues:
wx: Fix delete object
wx: Optimize command queues
wx: Optimize OpenGL invocations
|
|
delete_object used a deleted reference
|
|
Remove allocations
|
|
* erland/OTP18/inets/time_dialyzer/OTP-12441:
inets: Remove dialyzer warning for inets_lib
|
|
sys_write_buf allocator type is used from async-threads and needs
to be lockable. In the SMP case the temporary allocator is lockable but
not in the Non-SMP case.
To remedy this the binary-allocator is used for the Non-SMP case,
which is lockable.
|
|
* peppe/add_obsolete_app_warnings:
Declare webtool and test_server as obsolete
OTP-10922
OTP-10923
|
|
* peppe/common_test/ct_telnet_modifications:
Set TCP option {nodelay,true} as default for telnet connections
Increase speed of keep_alive (NOP) polls
OTP-12678
|
|
* peppe/jcl_mode_improvements:
Fix problem with unitialized edlin text buffer
Fix shell crash when in switch command mode
OTP-12673
|
|
* origin/peppe/common_test/ct_gen_conn_problem:
Improve code
OTP-10365
|
|
'origin/peppe/common_test/improve_suite_error_reports'
* origin/peppe/common_test/improve_suite_error_reports:
Add missing events and hook function calls
Improve error reports in log when suite compilation fails
OTP-10816
|
|
* origin/peppe/common_test/test_categories:
Reintroduce functions for backwards compatibility
Update handling of failing all/0 function in test suites
Add tests for the get_testspec_terms functionality
Introduce test categories for OTP tests
OTP-11962
|
|
* origin/peppe/common_test/remove_old_scripts:
Remove obsolete installation scripts and update documentation
OTP-12421
|
|
|
|
When several packets where receive in one packet ct_netconf
failed to deliver them to the user.
For example several subscritiption message could be in the buffer
but only the first was sent to the user.
Error handling could be improved, maybe the connection should
be closed when unparseable packet arrives or timeout occurs.
|
|
|
|
|
|
OTP-12688
|
|
OTP-12697
|
|
OTP-12704
|
|
OTP-12704
|
|
OTP-12704
|
|
* ia/ssl/docs:
ssl: Add missing tag
ssl: Put back marker
ssl: Fix links
ssl: Align with application naming rules
ssl: Keep information in one place only
ssl: Correct makefile
|
|
|
|
* ia/ssh/test-openssh-cuddle:
ssh: Add openSSH interop check
|
|
Upgrade instructions have been added for each 17.X release without
adjusting the instructions for preceeding releases: the instructions
have only been sufficient to upgrading one release at a time: 17.0 to
17.1, 17.1 to 17.2, etc.
Conficting load order requirements make smooth upgrade from an
arbitrarily old release impossible. In this case, 17.3 looks to be as
far back as we can go, so require restart from 17.[0-2] or older.
Update the app suite to deal with binary regexps in appup, and to match
version numbers harder.
|
|
Required load order by ticket.
- OTP-12642, extra bit in diameter_avp.data
- OTP-12654, Result-Code/Experimental-Result confusion
- OTP-12701, counting error with unknown Application Id
none
|
|
To start checking that the counters are counting what's expected. The
parent commit fixes a case in which they weren't.
|
|
Statistics could be accumulated on a key like {{23,275,0}, recv} even
though 23 was not the application id of the dictionary in question.
Missed in commits df19c272 and 7816ab2f.
|
|
|
|
|
|
|