diff --git a/cmake/find_rapidjson.cmake b/cmake/find_rapidjson.cmake index bd8f0fbb4494e865f1ff26dd0c65910dc62d2424..443e2b02a2861474091b5f9c876df106e5bcb7db 100644 --- a/cmake/find_rapidjson.cmake +++ b/cmake/find_rapidjson.cmake @@ -1,9 +1,28 @@ -if (NOT EXISTS "${ClickHouse_SOURCE_DIR}/contrib/rapidjson/include/rapidjson/rapidjson.h") - message (WARNING "submodule contrib/rapidjson is missing. to fix try run: \n git submodule update --init --recursive") +option(ENABLE_RAPIDJSON "Use rapidjson" ON) +if(NOT ENABLE_RAPIDJSON) return() -endif () +endif() -option (USE_RAPIDJSON "Use rapidjson" ON) -set (RAPIDJSON_INCLUDE_DIR "${ClickHouse_SOURCE_DIR}/contrib/rapidjson/include") +option(USE_INTERNAL_RAPIDJSON_LIBRARY "Set to FALSE to use system rapidjson library instead of bundled" ${NOT_UNBUNDLED}) + +if(NOT EXISTS "${ClickHouse_SOURCE_DIR}/contrib/rapidjson/include/rapidjson/rapidjson.h") + if(USE_INTERNAL_RAPIDJSON_LIBRARY) + message(WARNING "submodule contrib/rapidjson is missing. to fix try run: \n git submodule update --init --recursive") + set(USE_INTERNAL_RAPIDJSON_LIBRARY 0) + endif() + set(MISSING_INTERNAL_RAPIDJSON_LIBRARY 1) +endif() + +if(NOT USE_INTERNAL_RAPIDJSON_LIBRARY) + find_path(RAPIDJSON_INCLUDE_DIR NAMES rapidjson/rapidjson.h PATHS ${RAPIDJSON_INCLUDE_PATHS}) +endif() + +if(RAPIDJSON_INCLUDE_DIR) + set(USE_RAPIDJSON 1) +elseif(NOT MISSING_INTERNAL_RAPIDJSON_LIBRARY) + set(RAPIDJSON_INCLUDE_DIR "${ClickHouse_SOURCE_DIR}/contrib/rapidjson/include") + set(USE_INTERNAL_RAPIDJSON_LIBRARY 1) + set(USE_RAPIDJSON 1) +endif() message(STATUS "Using rapidjson=${USE_RAPIDJSON}: ${RAPIDJSON_INCLUDE_DIR}") diff --git a/dbms/src/Functions/FunctionsGeo.cpp b/dbms/src/Functions/FunctionsGeo.cpp index 9ae764a7be4b365a2a12219ae73f95f7e5a7ffa6..05ed8db29696702abb6674d822ceb02b6fbd6d9c 100644 --- a/dbms/src/Functions/FunctionsGeo.cpp +++ b/dbms/src/Functions/FunctionsGeo.cpp @@ -335,7 +335,7 @@ public: const IColumn * longitude = block.getByPosition(arguments[0]).column.get(); const IColumn * latitude = block.getByPosition(arguments[1]).column.get(); - const UInt64 precision_value = std::min(GEOHASH_MAX_TEXT_LENGTH, + const UInt64 precision_value = std::min(GEOHASH_MAX_TEXT_LENGTH, arguments.size() == 3 ? block.getByPosition(arguments[2]).column->get64(0) : GEOHASH_MAX_TEXT_LENGTH); ColumnPtr & res_column = block.getByPosition(result).column; diff --git a/dbms/src/Storages/Kafka/KafkaBlockInputStream.cpp b/dbms/src/Storages/Kafka/KafkaBlockInputStream.cpp index 56b1db85a3f0bd542f09fe4559fd49401f880ddf..62a86d44944c6628c4c520d31ea77d5db43a1c8e 100644 --- a/dbms/src/Storages/Kafka/KafkaBlockInputStream.cpp +++ b/dbms/src/Storages/Kafka/KafkaBlockInputStream.cpp @@ -41,7 +41,7 @@ void KafkaBlockInputStream::readPrefixImpl() const auto & limits = getLimits(); const size_t poll_timeout = buffer->subBufferAs()->pollTimeout(); - size_t rows_portion_size = poll_timeout ? std::min(max_block_size, limits.max_execution_time.totalMilliseconds() / poll_timeout) : max_block_size; + size_t rows_portion_size = poll_timeout ? std::min(max_block_size, limits.max_execution_time.totalMilliseconds() / poll_timeout) : max_block_size; rows_portion_size = std::max(rows_portion_size, 1ul); auto child = FormatFactory::instance().getInput(storage.format_name, *buffer, storage.getSampleBlock(), context, max_block_size, rows_portion_size); diff --git a/utils/build/build_debian_unbundled.sh b/utils/build/build_debian_unbundled.sh index 41c951c4bae5eb9979e2762e418c22090ea3a591..a75239321be4a6fd1d3f063d20aa263db2e024a8 100755 --- a/utils/build/build_debian_unbundled.sh +++ b/utils/build/build_debian_unbundled.sh @@ -22,5 +22,5 @@ env TEST_RUN=1 \ `# Use all possible contrib libs from system` \ `# psmisc - killall` \ `# gdb - symbol test in pbuilder` \ - EXTRAPACKAGES="psmisc libboost-program-options-dev libboost-system-dev libboost-filesystem-dev libboost-thread-dev libboost-regex-dev zlib1g-dev liblz4-dev libdouble-conversion-dev libsparsehash-dev librdkafka-dev libpoco-dev unixodbc-dev libsparsehash-dev libgoogle-perftools-dev libzstd-dev libre2-dev libunwind-dev googletest libcctz-dev libcapnp-dev libjemalloc-dev libssl-dev libunwind-dev libgsasl7-dev libxml2-dev libbrotli-dev libhyperscan-dev $EXTRAPACKAGES" \ + EXTRAPACKAGES="psmisc libboost-program-options-dev libboost-system-dev libboost-filesystem-dev libboost-thread-dev libboost-regex-dev zlib1g-dev liblz4-dev libdouble-conversion-dev libsparsehash-dev librdkafka-dev libpoco-dev unixodbc-dev libsparsehash-dev libgoogle-perftools-dev libzstd-dev libre2-dev libunwind-dev googletest libcctz-dev libcapnp-dev libjemalloc-dev libssl-dev libunwind-dev libgsasl7-dev libxml2-dev libbrotli-dev libhyperscan-dev rapidjson-dev $EXTRAPACKAGES" \ pdebuild --configfile $ROOT_DIR/debian/.pbuilderrc $PDEBUILD_OPT