From e97b991eef63663d1f635813fe375354edb7b51a Mon Sep 17 00:00:00 2001 From: Raphael Isemann Date: Fri, 4 Dec 2020 11:42:36 +0100 Subject: [lldb] Remove LLDB session dir and just store test traces in the respective test build directory Test runs log some of their output to files inside the LLDB session dir. This session dir is shared between all tests, so all the tests have to make sure they choose a unique file name inside that directory. We currently choose by default `-` as the log file name. However, that means that if not every test class in the test suite has a unique class name, then we end up with a race condition as two tests will try to write to the same log file. I already tried in D83767 changing the format to use the test file basename instead (which we already require to be unique for some other functionality), but it seems the code for getting the basename didn't work on Windows. This patch instead just changes that dotest stores the log files in the build directory for the current test. We know that directory is unique for this test, so no need to generate some unique file name now. Also removes all the environment vars and parameters related to the now unused session dir. The new log paths now look like this for a failure in 'TestCppOperators`: ``` ./lldb-test-build.noindex/lang/cpp/operators/TestCppOperators.test_dwarf/Failure.log ./lldb-test-build.noindex/lang/cpp/operators/TestCppOperators.test_dsym/Failure.log ./lldb-test-build.noindex/lang/cpp/operators/TestCppOperators.test_gmodules/Failure.log ``` Reviewed By: labath Differential Revision: https://reviews.llvm.org/D92498 --- lldb/packages/Python/lldbsuite/test/configuration.py | 14 -------------- 1 file changed, 14 deletions(-) (limited to 'lldb/packages/Python/lldbsuite/test/configuration.py') diff --git a/lldb/packages/Python/lldbsuite/test/configuration.py b/lldb/packages/Python/lldbsuite/test/configuration.py index 7939a27..db4262f 100644 --- a/lldb/packages/Python/lldbsuite/test/configuration.py +++ b/lldb/packages/Python/lldbsuite/test/configuration.py @@ -76,20 +76,6 @@ regexp = None skip_tests = None xfail_tests = None -# By default, recorded session info for errored/failed test are dumped into its -# own file under a session directory named after the timestamp of the test suite -# run. Use '-s session-dir-name' to specify a specific dir name. -sdir_name = None - -# Valid options: -# f - test file name (without extension) -# n - test class name -# m - test method name -# a - architecture -# c - compiler path -# The default is to write all fields. -session_file_format = 'fnmac' - # Set this flag if there is any session info dumped during the test run. sdir_has_content = False # svn_info stores the output from 'svn info lldb.base.dir'. -- cgit v1.1