From 21f95e607ea584b84102fd45cb138277760b1c6d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Bj=C3=B6rn=20Gustavsson?= Date: Mon, 8 Apr 2019 14:09:11 +0200 Subject: Clear ERL_AFLAGS when starting a previous release When starting a slave or peer node, options in ERL_AFLAGS might not be valid for the previous release. For instance, "-emu_type lcnt" would only work if the previous release happened to have been built with a lock counting emulator. --- lib/common_test/src/test_server_node.erl | 9 +++++++++ 1 file changed, 9 insertions(+) (limited to 'lib/common_test/src') diff --git a/lib/common_test/src/test_server_node.erl b/lib/common_test/src/test_server_node.erl index 3ae4a047d8..c11b9071cf 100644 --- a/lib/common_test/src/test_server_node.erl +++ b/lib/common_test/src/test_server_node.erl @@ -598,11 +598,20 @@ pick_erl_program(L) -> {prog, S} -> S; {release, S} -> + clear_erl_aflags(), find_release(S); this -> ct:get_progname() end. +clear_erl_aflags() -> + %% When starting a node with a previous release, options in + %% ERL_AFLAGS could prevent the node from starting. For example, + %% if ERL_AFLAGS is set to "-emu_type lcnt", the node will only + %% start if the previous release happens to also have a lock + %% counter emulator installed (unlikely). + os:unsetenv("ERL_AFLAGS"). + %% This is an attempt to distinguish between spaces in the program %% path and spaces that separate arguments. The program is quoted to %% allow spaces in the path. -- cgit v1.2.3