Unverified Commit 80928f8e authored by yiwu-arbug's avatar yiwu-arbug Committed by GitHub

travis: update environment and enable compression (#191)

Update travis script to enable compression in tests. needed by #189

Also exclude NoSpaceLeft test from travis.
Signed-off-by: 's avatarYi Wu <yiwu@pingcap.com>
parent 46b3a5e4
dist: bionic dist: focal
language: cpp language: cpp
os: os: linux
- linux
- osx
compiler: clang compiler: clang
osx_image: xcode11.2 osx_image: xcode12.2
addons: addons:
apt: apt:
sources:
- ubuntu-toolchain-r-test
- llvm-toolchain-xenial-7
packages: packages:
- g++-7 - clang-format-10
- g++-9
- libgflags-dev - libgflags-dev
- liblz4-dev
- libsnappy-dev
- libzstd-dev
- lcov - lcov
- clang-format-7 - zlib1g
env: env:
- BUILD_TYPE="Release" - BUILD_TYPE="Release"
...@@ -38,13 +37,15 @@ matrix: ...@@ -38,13 +37,15 @@ matrix:
- os: linux - os: linux
compiler: compiler:
env: env:
- COMPILER=gcc7 - COMPILER=gcc9
- os: osx
env:
- SANITIZER="ASAN"
- os: linux - os: linux
compiler: compiler:
env: env:
- FORMATTER=ON - FORMATTER=ON
install: install:
# osx dependencies # osx dependencies
- if [ "${TRAVIS_OS_NAME}" == osx ]; then - if [ "${TRAVIS_OS_NAME}" == osx ]; then
...@@ -58,9 +59,9 @@ install: ...@@ -58,9 +59,9 @@ install:
done done
fi fi
- export CTEST_OUTPUT_ON_FAILURE=1 - export CTEST_OUTPUT_ON_FAILURE=1
- if [ "${COMPILER}" == gcc7 ]; then - if [ "${COMPILER}" == gcc9 ]; then
CC=gcc-7; CC=gcc-9;
CXX=g++-7; CXX=g++-9;
export COVERAGE_OPT="-DCODE_COVERAGE=ON"; export COVERAGE_OPT="-DCODE_COVERAGE=ON";
fi fi
- if [ ! -z "${BUILD_TYPE}" ]; then - if [ ! -z "${BUILD_TYPE}" ]; then
...@@ -72,6 +73,7 @@ install: ...@@ -72,6 +73,7 @@ install:
export SANITIZER_OPT="-DWITH_${SANITIZER}=ON"; export SANITIZER_OPT="-DWITH_${SANITIZER}=ON";
export TOOLS_OPT="-DWITH_TITAN_TOOLS=OFF"; export TOOLS_OPT="-DWITH_TITAN_TOOLS=OFF";
fi fi
- export COMPRESSION_OPT="-DWITH_SNAPPY=ON -DWITH_LZ4=ON -DWITH_ZLIB=ON -DWITH_ZSTD=ON"
script: script:
- if [ -z "${FORMATTER}" ]; then - if [ -z "${FORMATTER}" ]; then
...@@ -81,7 +83,7 @@ script: ...@@ -81,7 +83,7 @@ script:
fi fi
after_success: after_success:
- if [ "${COMPILER}" == gcc7 ]; then - if [ "${COMPILER}" == gcc9 ]; then
lcov --gcov-tool gcov-7 --directory . --capture --output-file coverage.info; lcov --gcov-tool gcov-7 --directory . --capture --output-file coverage.info;
lcov --remove coverage.info '/usr/*' --output-file coverage.info; lcov --remove coverage.info '/usr/*' --output-file coverage.info;
lcov --list coverage.info; lcov --list coverage.info;
......
...@@ -27,7 +27,8 @@ if (NOT DEFINED ROCKSDB_DIR) ...@@ -27,7 +27,8 @@ if (NOT DEFINED ROCKSDB_DIR)
message(FATAL_ERROR "ROCKSDB_DIR is not defined.") message(FATAL_ERROR "ROCKSDB_DIR is not defined.")
endif() endif()
list(APPEND CMAKE_MODULE_PATH "${ROCKSDB_DIR}/cmake/modules/") set(CMAKE_MODULE_PATH "${ROCKSDB_DIR}/cmake/modules/")
# list(APPEND CMAKE_MODULE_PATH "${ROCKSDB_DIR}/cmake/modules/")
include(cmake/rocksdb_flags.cmake) include(cmake/rocksdb_flags.cmake)
include_directories(${ROCKSDB_DIR}) include_directories(${ROCKSDB_DIR})
...@@ -68,6 +69,10 @@ add_library(titan_build_version OBJECT ${TITAN_BUILD_VERSION_CC}) ...@@ -68,6 +69,10 @@ add_library(titan_build_version OBJECT ${TITAN_BUILD_VERSION_CC})
target_include_directories(titan_build_version PRIVATE target_include_directories(titan_build_version PRIVATE
${CMAKE_CURRENT_SOURCE_DIR}/util) ${CMAKE_CURRENT_SOURCE_DIR}/util)
if (TRAVIS)
add_definitions(-DTRAVIS)
endif()
if (CODE_COVERAGE) if (CODE_COVERAGE)
target_compile_options(titan PRIVATE "--coverage") target_compile_options(titan PRIVATE "--coverage")
set(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} --coverage") set(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} --coverage")
......
...@@ -3,7 +3,7 @@ ...@@ -3,7 +3,7 @@
set -ev set -ev
git fetch --depth=1 origin master:master; git fetch --depth=1 origin master:master;
git diff $(git merge-base master HEAD) HEAD > diff; git diff $(git merge-base master HEAD) HEAD > diff;
cat diff | clang-format-diff-7 -style=google -p1 > formatted; cat diff | clang-format-diff-10 -style=google -p1 > formatted;
if [ -s formatted ]; then if [ -s formatted ]; then
cat formatted; cat formatted;
echo "Run scripts/format-diff.sh to format your code."; echo "Run scripts/format-diff.sh to format your code.";
......
#!/bin/bash #!/bin/bash
set -ev set -ev
cmake . -L -DTRAVIS=ON ${BUILD_OPT} ${SANITIZER_OPT} ${TOOLS_OPT} ${COVERAGE_OPT} cmake . -L -DTRAVIS=ON ${COMPRESSION_OPT} ${BUILD_OPT} ${SANITIZER_OPT} ${TOOLS_OPT} ${COVERAGE_OPT}
make -j4 make -j4
ctest -R titan ctest -R titan
...@@ -99,8 +99,10 @@ std::string CreateDict() { ...@@ -99,8 +99,10 @@ std::string CreateDict() {
BlobEncoder encoder(kZSTD); BlobEncoder encoder(kZSTD);
for (int i = 0; i < sample_count; ++i) { for (int i = 0; i < sample_count; ++i) {
record.key = "key" + std::to_string(i); std::string key = "key" + std::to_string(i);
record.value = "value" + std::to_string(i); std::string value = "value" + std::to_string(i);
record.key = Slice(key);
record.value = Slice(value);
encoder.EncodeRecord(record); encoder.EncodeRecord(record);
std::string encoded_record = encoder.GetRecord().ToString(); std::string encoded_record = encoder.GetRecord().ToString();
......
...@@ -1951,8 +1951,8 @@ TEST_F(TitanDBTest, Config) { ...@@ -1951,8 +1951,8 @@ TEST_F(TitanDBTest, Config) {
Close(); Close();
} }
#if defined(__linux) && !defined(TRAVIS)
TEST_F(TitanDBTest, NoSpaceLeft) { TEST_F(TitanDBTest, NoSpaceLeft) {
#if defined(__linux)
options_.disable_background_gc = false; options_.disable_background_gc = false;
system(("mkdir -p " + dbname_).c_str()); system(("mkdir -p " + dbname_).c_str());
system(("sudo mount -t tmpfs -o size=1m tmpfs " + dbname_).c_str()); system(("sudo mount -t tmpfs -o size=1m tmpfs " + dbname_).c_str());
...@@ -1967,8 +1967,8 @@ TEST_F(TitanDBTest, NoSpaceLeft) { ...@@ -1967,8 +1967,8 @@ TEST_F(TitanDBTest, NoSpaceLeft) {
Close(); Close();
system(("sudo umount -l " + dbname_).c_str()); system(("sudo umount -l " + dbname_).c_str());
#endif
} }
#endif
} // namespace titandb } // namespace titandb
} // namespace rocksdb } // namespace rocksdb
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment