Age | Commit message (Collapse) | Author |
|
release_handler_SUITE:otp_9395_update_many_mods and
otp_9395_rm_many_mods often fail on test host 'nain' due to a very
slow sys call. These tests are now skipped on this host.
|
|
After starting a node with open_port({spawn_executable,...},...), the
resulting port is closed both automatically and by the calling
rh_test_lib:cmd/3. To avoid 'badarg' in the case when the automatic is
faster, the call to erlang:port_close/1 is now catched.
|
|
release_handler_SUITE waits for a maximum of 30 sec when starting a
node. On slow machines we have seen that startup time sometimes exceed
this so the maximum is now extended to 2 minutes.
|
|
release_handler_SUITE:otp_9395_*_many_mods sometimes fail on slow
machines. This commit adds an explicit GC before each
'install_release' so GC during test is avoided.
|
|
release_handler_SUITE:upgrade_gg (global group) sometimes fails on
slow machines. This commit re-tries five times before giving up.
|
|
* josevalim/supervisor-get-callback-module/PR-1000/OTP-13619:
Return callback module in supervisor format_status
|
|
The previous implementation of supervisor:get_callback_module/1
used sys:get_status/1 to get the supervisor inner state and
retrieve the callback module. Such implementation forbids any
other supervisor implementation that has an internal state
different than the #state{} record in supervisor.erl.
This patch allows supervisors to return the callback module
as part of the sys:get_status/1 data, no longer coupling the
callback module implementation with the inner #state{} record.
Notice we have kept the clause matching the previous
sys:get_status/1 reply for backwards compatibility purposes.
|
|
Windows 8 and later have stronger admin checks which requires
erlang to run in privileged shells, ignore for now.
|
|
* henrik/update-copyrightyear:
update copyright-year
|
|
"Old" versions are now taken from OTP-18.0, i.e. one major revision
back from OTP-19.
|
|
|
|
The reason is that the module is not used, and that we se no obvious
use case for it.
|
|
Cleanliness.
|
|
Since no test suites includede test_server.hrl, there is no need
to have test_server in the include path or code path.
|
|
As a first step to removing the test_server application as
as its own separate application, change the inclusion of
test_server.hrl to an inclusion of ct.hrl and remove the
inclusion of test_server_line.hrl.
|
|
Conflicts:
lib/stdlib/src/supervisor.erl
|
|
Speed up supervisor:count_children/1 for simple_one_for_one
supervisors. This is achieved by avoiding looping through all the
child process and verifying that each one is alive.
For a supervisor with 100,000 'temporary' children the count-time will
drop from approx 25ms to about 0.005ms.
For a supervisor with 100,000 'permanent' or 'transient' children the
count-time will drop from approx 30ms to about 0.005ms.
This avoids having the supervisor block for an extended period while
the count takes place. Under normal circumstances the accuracy of the
result should also improve since the duration is too short for many
processes to die during the count.
|
|
|
|
|
|
|
|
The test case did not test the log files were created. And they
were not created, because filelib:ensure_dir/1 was used
incorrectly.
|
|
|
|
Include the ability to open a SASL error log file in append mode
at startup vs currently implemented "rewrite-always" mode.
|
|
|
|
release_handler_SUITE:otp_10463_upgrade_script_regexp reads
kernel.appup and tries to fetch upgrade instructions for upgrade from
current version to current version. The point of the test is to see
that release_handler can read an appup with regexps.
In some cases, however, kernel.appup does not support upgrade from
current to current version, since this is not necessary in real
life. Therefore this test is now updated to use a dummy application
(release_handler_SUITE_data/regexp_appup/app1) for this test.
|
|
The upgrade instruction 'remove_module' was added in OTP R7B (and
possibly in a patch in R5B or R6B, ticket OTP-3477), and translates to
the low level instruction 'remove', but adds the parameter DepMods
(modules on which Mod is dependent). The ticket says that
"remove_module should be added for symmetry with the add_module
instruction". remove_module was never documented or tested, and it was
never mentioned in a release note. It therefore seems to be low risk
in removing it.
The correct instruction to use when removing a module is
{delete_module,Mod}
which was added in OTP R10B and which is also documented and
tested. This translates to low level instructions 'remove' and 'purge'
i.e. the module is brutally purged after setting the current code to
old. This hardcoded brutal purge is the reason why PrePurge and
PostPurge parameters can not be given with the delete_module
instruction.
The parameter DepMods which was inclued in the remove_module
instruction does not exist for delete_module. From the documentation's
point of view, this is the same for add_module, and thus the two
instructions {add_module,Mod} and {delete_module,Mod} are now
symmetric. However, in the code there is a second instruction for
adding a module, {add_module,Mod,DepMods}, which is not documented. To
add symmetry even for this, {delete_module,Mod,DepMods} is now also
added. Documentation is added for all instructions.
|
|
|
|
The appup tests for kernel, stdlib and sasl tests that the appup file
allows upgrade from the previous and current major release to the
current release. If, in the current release, the application version
was not changed compared to the previous release, then we would still
test that the appup supported the upgrade (i.e. from current release
to current release). This is now changed, in order to avoid test
failures on patch releases where kernel, stdlib and sasl are not
changed.
|
|
* siri/master-cuddle-with-tests:
Update sasl/test/test_lib.hrl with recent versions of kernel and stdlib
Update crashdump_viewer_SUITE with new release numbers
|
|
In order to fake an earlier release to upgrade from, version numbers
are replaced in some .app files. This commit adds a backslash before
the dot in the pattern to replace, so the dot is not mistaken for a
wildcard.
|
|
|
|
Add test of update instructions from current major to current
minor. Earlier only previous major to current was tested.
|
|
On some test hosts a lot of applications are skipped from the erlang
installation in order to make test go faster.
systools_SUITE:app_start_type_relup uses a few applications which
therefore might not exist. This commit make sure the test is skipped
(instead of fail) if some of the needed applications are missing.
|
|
The slave node from release_handler_SUITE:upgrade_supervisor_fail
sometimes survives its test case. Or rather, it is unexpectedly
restarted. Every now and then, on a slow machine, this confuses the
next test case since test_server:start_node might return the old node
name instead of the new. This has been corrected by using
{error_action,reboot} in release_handler_SUITE:upgrade_supervisor_fail
- to make sure the slave node is really terminated on rollback.
|
|
Test cases 'release_handler_which_releases' and 'upgrade_supervisor'
did not terminate the nodes they started. This might be the cause of
failing test cases further down the suite. This has been corrected.
|
|
|
|
In release_handler_SUITE, print command with ~ts instead of ~tp in
case it contains unicode characters.
|
|
* dumbbell/function_clause-in-systools_make-format_error:
sasl: Fix crash in systools_make:format_error/1
OTP-11819
|
|
The crash occurred when systools:make_script/2 raises the
'duplicate_modules' error. Depending on the 'silent' option,
systools_make:format_error/1 is called to either format and display an
error message, or return a tuple containing the error properties.
When displaying a 'duplicate_modules' error message, format_error/1
receives a list of applications providing the same module(s):
[
{{Mod,App1,_}, {Mod,App2,_}},
...
]
However, before this fix, format_error/1 expected the following
structure, leading to a 'function_clause' exception:
[
{{Mod,_,App1,_,_}, {Mod,_,App2,_,_}},
...
]
The crash never occurred with the 'silent' option, because the error and
its properties are returned as is to the caller.
|
|
These tests start new nodes, and they frequently timed out on some
slow test hosts.
|
|
* siri/restart_app-type/OTP-11716:
[sasl] Use restart type from .rel when restarting apps during upgrade
|
|
* siri/appup_tests_17/OTP-11534:
Update sasl/test/test_lib.hrl with recent versions of kernel and stdlib
Update appups and appup tests for kernel, stdlib and sasl
|
|
Earlier the 'restart_application' upgrade instruction always cause the
application to be restarted as permanent. This could cause the system
to end up in an unexpected state after an upgrade. This is now
corrected.
|
|
|
|
Appups now only support one major release back, and the tests are
updated accordingly.
Support is also added in tests for giving previous releases in a ct
config file, e.g.
{otp_releases,[{r15,"/path/to/r15/bin/erl"},
{r16,"/path/to/r16/bin/erl"},
{'17',"/path/to/17/bin/erl"}]}.
|
|
Quoting on Windows is strange
|
|
* siri/appup_tests_17/OTP-11534:
Update sasl appup test to work for OTP release 17
Update stdlib appup test to work for OTP release 17
Update kernel appup test to work for OTP release 17
|
|
|
|
|
|
|