Reenable s390x platform_dependent travis job (#9631)
Summary: Fix g++ -march=native detection and reenable s390x in travis This PR fixes s390x assembler messages: ``` Error: invalid switch -march=z14 Error: unrecognized option -march=z14 ``` The s390x travis build was failing with gcc-7 because the assembler on ubuntu 16.04 is too old to recognize the z14 model so it doesn't work with -march=native on a z14 machine. It fixes the check for the -march=native flag so that the assembler will get called and correctly fail on ubuntu 16.04 which will cause the build to fall back to -march=z196 which works. The other changes are needed so builds work more consistently on s390x: 1. Set make parallelism to 1 for s390x: The default was 4 previously but I saw frequent internal compiler errors on travis probably due to low resources. The `platform_dependent` job works more consistently but is roughly 10 minutes slower although it varies. 2. Remove status_checked jobs, as we are relying on CircleCI for these now and do not really need platform coverage on them. Fixes https://github.com/facebook/rocksdb/issues/9524 Pull Request resolved: https://github.com/facebook/rocksdb/pull/9631 Test Plan: CI Reviewed By: ajkr Differential Revision: D34553989 Pulled By: pdillinger fbshipit-source-id: a6e3a7276446721c4c0bebc4ed217c2ca2b53f11
This commit is contained in:
parent
9e9e3d16b9
commit
3edbeeaa50
40
.travis.yml
40
.travis.yml
@ -43,7 +43,6 @@ env:
|
|||||||
- JOB_NAME=cmake-gcc9 # 3-5 minutes
|
- JOB_NAME=cmake-gcc9 # 3-5 minutes
|
||||||
- JOB_NAME=cmake-gcc9-c++20 # 3-5 minutes
|
- JOB_NAME=cmake-gcc9-c++20 # 3-5 minutes
|
||||||
- JOB_NAME=cmake-mingw # 3 minutes
|
- JOB_NAME=cmake-mingw # 3 minutes
|
||||||
- JOB_NAME=status_checked
|
|
||||||
|
|
||||||
matrix:
|
matrix:
|
||||||
exclude:
|
exclude:
|
||||||
@ -58,10 +57,6 @@ matrix:
|
|||||||
env: JOB_NAME=cmake-mingw
|
env: JOB_NAME=cmake-mingw
|
||||||
- os: linux
|
- os: linux
|
||||||
compiler: clang
|
compiler: clang
|
||||||
- if: type = pull_request AND commit_message !~ /FULL_CI/
|
|
||||||
os: linux
|
|
||||||
arch: s390x # Temporary while working through gcc-7 + assembler issue
|
|
||||||
env: TEST_GROUP=platform_dependent
|
|
||||||
- if: type = pull_request AND commit_message !~ /FULL_CI/
|
- if: type = pull_request AND commit_message !~ /FULL_CI/
|
||||||
os: linux
|
os: linux
|
||||||
arch: arm64
|
arch: arm64
|
||||||
@ -190,18 +185,6 @@ matrix:
|
|||||||
os: linux
|
os: linux
|
||||||
arch: s390x
|
arch: s390x
|
||||||
env: JOB_NAME=cmake-gcc9-c++20
|
env: JOB_NAME=cmake-gcc9-c++20
|
||||||
- if: type = pull_request AND commit_message !~ /FULL_CI/
|
|
||||||
os : linux
|
|
||||||
arch: arm64
|
|
||||||
env: JOB_NAME=status_checked
|
|
||||||
- if: type = pull_request AND commit_message !~ /FULL_CI/
|
|
||||||
os: linux
|
|
||||||
arch: ppc64le
|
|
||||||
env: JOB_NAME=status_checked
|
|
||||||
- if: type = pull_request AND commit_message !~ /FULL_CI/
|
|
||||||
os: linux
|
|
||||||
arch: s390x
|
|
||||||
env: JOB_NAME=status_checked
|
|
||||||
|
|
||||||
install:
|
install:
|
||||||
- CC=gcc-7 && CXX=g++-7
|
- CC=gcc-7 && CXX=g++-7
|
||||||
@ -247,21 +230,25 @@ before_script:
|
|||||||
script:
|
script:
|
||||||
- date; ${CXX} --version
|
- date; ${CXX} --version
|
||||||
- if [ `command -v ccache` ]; then ccache -C; fi
|
- if [ `command -v ccache` ]; then ccache -C; fi
|
||||||
|
- export MK_PARALLEL=4;
|
||||||
|
if [[ "$TRAVIS_CPU_ARCH" == s390x ]]; then
|
||||||
|
export MK_PARALLEL=1;
|
||||||
|
fi
|
||||||
- case $TEST_GROUP in
|
- case $TEST_GROUP in
|
||||||
platform_dependent)
|
platform_dependent)
|
||||||
OPT=-DTRAVIS LIB_MODE=shared V=1 ROCKSDBTESTS_PLATFORM_DEPENDENT=only make -j4 all_but_some_tests check_some
|
OPT=-DTRAVIS LIB_MODE=shared V=1 ROCKSDBTESTS_PLATFORM_DEPENDENT=only make -j$MK_PARALLEL all_but_some_tests check_some
|
||||||
;;
|
;;
|
||||||
1)
|
1)
|
||||||
OPT=-DTRAVIS LIB_MODE=shared V=1 ROCKSDBTESTS_PLATFORM_DEPENDENT=exclude ROCKSDBTESTS_END=backupable_db_test make -j4 check_some
|
OPT=-DTRAVIS LIB_MODE=shared V=1 ROCKSDBTESTS_PLATFORM_DEPENDENT=exclude ROCKSDBTESTS_END=backupable_db_test make -j$MK_PARALLEL check_some
|
||||||
;;
|
;;
|
||||||
2)
|
2)
|
||||||
OPT="-DTRAVIS -DROCKSDB_NAMESPACE=alternative_rocksdb_ns" LIB_MODE=shared V=1 make -j4 tools && OPT="-DTRAVIS -DROCKSDB_NAMESPACE=alternative_rocksdb_ns" LIB_MODE=shared V=1 ROCKSDBTESTS_PLATFORM_DEPENDENT=exclude ROCKSDBTESTS_START=backupable_db_test ROCKSDBTESTS_END=db_universal_compaction_test make -j4 check_some
|
OPT="-DTRAVIS -DROCKSDB_NAMESPACE=alternative_rocksdb_ns" LIB_MODE=shared V=1 make -j$MK_PARALLEL tools && OPT="-DTRAVIS -DROCKSDB_NAMESPACE=alternative_rocksdb_ns" LIB_MODE=shared V=1 ROCKSDBTESTS_PLATFORM_DEPENDENT=exclude ROCKSDBTESTS_START=backupable_db_test ROCKSDBTESTS_END=db_universal_compaction_test make -j$MK_PARALLEL check_some
|
||||||
;;
|
;;
|
||||||
3)
|
3)
|
||||||
OPT=-DTRAVIS LIB_MODE=shared V=1 ROCKSDBTESTS_PLATFORM_DEPENDENT=exclude ROCKSDBTESTS_START=db_universal_compaction_test ROCKSDBTESTS_END=table_properties_collector_test make -j4 check_some
|
OPT=-DTRAVIS LIB_MODE=shared V=1 ROCKSDBTESTS_PLATFORM_DEPENDENT=exclude ROCKSDBTESTS_START=db_universal_compaction_test ROCKSDBTESTS_END=table_properties_collector_test make -j$MK_PARALLEL check_some
|
||||||
;;
|
;;
|
||||||
4)
|
4)
|
||||||
OPT=-DTRAVIS LIB_MODE=shared V=1 ROCKSDBTESTS_PLATFORM_DEPENDENT=exclude ROCKSDBTESTS_START=table_properties_collector_test make -j4 check_some
|
OPT=-DTRAVIS LIB_MODE=shared V=1 ROCKSDBTESTS_PLATFORM_DEPENDENT=exclude ROCKSDBTESTS_START=table_properties_collector_test make -j$MK_PARALLEL check_some
|
||||||
;;
|
;;
|
||||||
esac
|
esac
|
||||||
- case $JOB_NAME in
|
- case $JOB_NAME in
|
||||||
@ -269,10 +256,10 @@ script:
|
|||||||
OPT=-DTRAVIS LIB_MODE=shared V=1 make rocksdbjava jtest
|
OPT=-DTRAVIS LIB_MODE=shared V=1 make rocksdbjava jtest
|
||||||
;;
|
;;
|
||||||
lite_build)
|
lite_build)
|
||||||
OPT='-DTRAVIS -DROCKSDB_LITE' LIB_MODE=shared V=1 make -j4 all
|
OPT='-DTRAVIS -DROCKSDB_LITE' LIB_MODE=shared V=1 make -j$MK_PARALLEL all
|
||||||
;;
|
;;
|
||||||
examples)
|
examples)
|
||||||
OPT=-DTRAVIS LIB_MODE=shared V=1 make -j4 static_lib && cd examples && make -j4
|
OPT=-DTRAVIS LIB_MODE=shared V=1 make -j$MK_PARALLEL static_lib && cd examples && make -j$MK_PARALLEL
|
||||||
;;
|
;;
|
||||||
cmake-mingw)
|
cmake-mingw)
|
||||||
sudo update-alternatives --set x86_64-w64-mingw32-g++ /usr/bin/x86_64-w64-mingw32-g++-posix;
|
sudo update-alternatives --set x86_64-w64-mingw32-g++ /usr/bin/x86_64-w64-mingw32-g++-posix;
|
||||||
@ -285,10 +272,7 @@ script:
|
|||||||
;;
|
;;
|
||||||
esac
|
esac
|
||||||
|
|
||||||
mkdir build && cd build && cmake -DCMAKE_BUILD_TYPE=Release -DWITH_TESTS=0 -DWITH_GFLAGS=0 -DWITH_BENCHMARK_TOOLS=0 -DWITH_TOOLS=0 -DWITH_CORE_TOOLS=1 .. && make -j4 && cd .. && rm -rf build && mkdir build && cd build && cmake -DJNI=1 .. -DCMAKE_BUILD_TYPE=Release $OPT && make -j4 rocksdb rocksdbjni
|
mkdir build && cd build && cmake -DCMAKE_BUILD_TYPE=Release -DWITH_TESTS=0 -DWITH_GFLAGS=0 -DWITH_BENCHMARK_TOOLS=0 -DWITH_TOOLS=0 -DWITH_CORE_TOOLS=1 .. && make -j$MK_PARALLEL && cd .. && rm -rf build && mkdir build && cd build && cmake -DJNI=1 .. -DCMAKE_BUILD_TYPE=Release $OPT && make -j$MK_PARALLEL rocksdb rocksdbjni
|
||||||
;;
|
|
||||||
status_checked)
|
|
||||||
OPT=-DTRAVIS LIB_MODE=shared V=1 ASSERT_STATUS_CHECKED=1 make -j4 check_some
|
|
||||||
;;
|
;;
|
||||||
esac
|
esac
|
||||||
notifications:
|
notifications:
|
||||||
|
@ -632,7 +632,7 @@ if test "0$PORTABLE" -eq 0; then
|
|||||||
COMMON_FLAGS="$COMMON_FLAGS"
|
COMMON_FLAGS="$COMMON_FLAGS"
|
||||||
elif test -n "`echo $TARGET_ARCHITECTURE | grep ^s390x`"; then
|
elif test -n "`echo $TARGET_ARCHITECTURE | grep ^s390x`"; then
|
||||||
if echo 'int main() {}' | $CXX $PLATFORM_CXXFLAGS -x c++ \
|
if echo 'int main() {}' | $CXX $PLATFORM_CXXFLAGS -x c++ \
|
||||||
-fsyntax-only -march=native - -o /dev/null 2>/dev/null; then
|
-march=native - -o /dev/null 2>/dev/null; then
|
||||||
COMMON_FLAGS="$COMMON_FLAGS -march=native "
|
COMMON_FLAGS="$COMMON_FLAGS -march=native "
|
||||||
else
|
else
|
||||||
COMMON_FLAGS="$COMMON_FLAGS -march=z196 "
|
COMMON_FLAGS="$COMMON_FLAGS -march=z196 "
|
||||||
|
Loading…
Reference in New Issue
Block a user