aboutsummaryrefslogtreecommitdiff
path: root/.travis
diff options
context:
space:
mode:
authorMarcoFalke <falke.marco@gmail.com>2018-12-19 06:34:56 +1300
committerMarcoFalke <falke.marco@gmail.com>2018-12-19 06:35:29 +1300
commitf055389cb9572ed96c93722f451dfb37e7f1f9a2 (patch)
tree4b5eb705a6fff9804e7b2c295f787b12f8e4a177 /.travis
parentb545a7e33775bbb1065b1e2a3971ce005e633da4 (diff)
parenteaf4070e3a48ac6b9f7ae402c5de2c7117d9ef84 (diff)
Merge #14829: travis: Enable functional tests in the ThreadSanitizer (TSan) build job
eaf4070e3a Add suppression for InterruptRPC (fRPCRunning) data race (practicalswift) 5e5138a721 travis: Use trap and set -e errtrace (Chun Kuan Lee) 069752b726 build: Enable functional tests in the ThreadSanitizer (TSan) build job (practicalswift) Pull request description: Enable functional tests in the ThreadSanitizer (TSan) build job. This is a follow-up to @MarcoFalke's #14764 which added TSan but for unit tests only. Tree-SHA512: dcc24d311fa124772c3036b16c2bf94732ece36c3e22b4bb8fe941772e52157ab2b1a90b1880b81079c2eef2d344ca7e1da58324b75dbf82d16204d591ad49fb
Diffstat (limited to '.travis')
-rwxr-xr-x.travis/test_04_install.sh3
-rwxr-xr-x.travis/test_06_script.sh3
2 files changed, 5 insertions, 1 deletions
diff --git a/.travis/test_04_install.sh b/.travis/test_04_install.sh
index 03a61ea9f8..3f74158117 100755
--- a/.travis/test_04_install.sh
+++ b/.travis/test_04_install.sh
@@ -7,9 +7,10 @@
export LC_ALL=C.UTF-8
travis_retry docker pull "$DOCKER_NAME_TAG"
+mkdir -p "${TRAVIS_BUILD_DIR}/sanitizer-output/"
export ASAN_OPTIONS=""
export LSAN_OPTIONS="suppressions=${TRAVIS_BUILD_DIR}/test/sanitizer_suppressions/lsan"
-export TSAN_OPTIONS="suppressions=${TRAVIS_BUILD_DIR}/test/sanitizer_suppressions/tsan"
+export TSAN_OPTIONS="suppressions=${TRAVIS_BUILD_DIR}/test/sanitizer_suppressions/tsan:log_path=${TRAVIS_BUILD_DIR}/sanitizer-output/tsan"
export UBSAN_OPTIONS="suppressions=${TRAVIS_BUILD_DIR}/test/sanitizer_suppressions/ubsan:print_stacktrace=1:halt_on_error=1"
env | grep -E '^(BITCOIN_CONFIG|CCACHE_|WINEDEBUG|LC_ALL|BOOST_TEST_RANDOM|CONFIG_SHELL|(ASAN|LSAN|TSAN|UBSAN)_OPTIONS)' | tee /tmp/env
if [[ $HOST = *-mingw32 ]]; then
diff --git a/.travis/test_06_script.sh b/.travis/test_06_script.sh
index 506d2b518c..618aa2c3b6 100755
--- a/.travis/test_06_script.sh
+++ b/.travis/test_06_script.sh
@@ -40,6 +40,9 @@ BEGIN_FOLD configure
DOCKER_EXEC ./configure --cache-file=../config.cache $BITCOIN_CONFIG_ALL $BITCOIN_CONFIG || ( cat config.log && false)
END_FOLD
+set -o errtrace
+trap 'DOCKER_EXEC "cat ${TRAVIS_BUILD_DIR}/sanitizer-output/* 2> /dev/null"' ERR
+
BEGIN_FOLD build
DOCKER_EXEC make $MAKEJOBS $GOAL || ( echo "Build failure. Verbose build follows." && DOCKER_EXEC make $GOAL V=1 ; false )
END_FOLD