This is an automated email from the ASF dual-hosted git repository.
yangzhg pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/incubator-doris.git
The following commit(s) were added to refs/heads/master by this push:
new ad67dd3 update gcc to gcc 10 and support c++17 (#5394)
ad67dd3 is described below
commit ad67dd34a04c1ca960cff38e5b335b30fc7d559f
Author: stdpain <[email protected]>
AuthorDate: Thu Mar 25 09:30:38 2021 +0800
update gcc to gcc 10 and support c++17 (#5394)
* update gcc to gcc 10 and support c++17
update brpc to 0.9.7
update boost to 1.73
remove third-party boost 1.54 for mysql
* update cmake version
* ignore jdk version
* remove unused patch
* avoid use SYS_getrandom call
---
be/CMakeLists.txt | 23 +-
be/src/exec/CMakeLists.txt | 2 -
be/src/exec/decompressor.cpp | 2 +-
be/src/exec/olap_common.h | 11 +-
be/src/exec/scan_node.cpp | 2 -
be/src/http/default_path_handlers.cpp | 6 +-
be/src/http/ev_http_server.cpp | 2 +-
be/src/olap/rowset/rowset.h | 1 +
be/src/olap/rowset/unique_rowset_id_generator.h | 2 +
be/src/olap/storage_engine.cpp | 2 +
be/src/olap/task/engine_batch_load_task.cpp | 2 +-
be/src/runtime/buffered_block_mgr2.cc | 2 +-
be/src/runtime/buffered_tuple_stream2.cc | 2 +-
be/src/runtime/buffered_tuple_stream3.cc | 2 +-
be/src/runtime/bufferpool/buffer_allocator.cc | 5 +-
be/src/runtime/bufferpool/buffer_pool.cc | 8 +-
be/src/runtime/client_cache.h | 6 +-
be/src/runtime/data_stream_mgr.h | 2 +-
be/src/runtime/data_stream_recvr.cc | 10 +-
be/src/runtime/fragment_mgr.cpp | 26 +--
be/src/runtime/result_buffer_mgr.cpp | 2 +-
be/src/runtime/snapshot_loader.cpp | 2 +-
be/src/runtime/spill_sorter.cc | 2 +-
be/src/runtime/user_function_cache.cpp | 1 +
be/src/util/thrift_server.cpp | 5 +-
be/test/exprs/topn_function_test.cpp | 4 +-
env.sh | 19 ++
.../main/java/org/apache/doris/common/Config.java | 2 +-
thirdparty/build-thirdparty.sh | 109 +++++-----
thirdparty/download-thirdparty.sh | 10 +-
thirdparty/patches/incubator-brpc-0.9.5.patch | 237 ---------------------
thirdparty/patches/mysql-5.7.18-boost.patch | 20 ++
thirdparty/vars.sh | 23 +-
33 files changed, 183 insertions(+), 371 deletions(-)
diff --git a/be/CMakeLists.txt b/be/CMakeLists.txt
index 8be4883..e520b3c 100644
--- a/be/CMakeLists.txt
+++ b/be/CMakeLists.txt
@@ -15,7 +15,7 @@
# specific language governing permissions and limitations
# under the License.
-cmake_minimum_required(VERSION 3.12.0)
+cmake_minimum_required(VERSION 3.19.2)
# set CMAKE_C_COMPILER, this must set before project command
if (DEFINED ENV{DORIS_GCC_HOME})
@@ -130,14 +130,13 @@ endif()
set(Boost_DEBUG FALSE)
set(Boost_USE_MULTITHREADED ON)
set(BOOST_ROOT ${THIRDPARTY_DIR})
+set(Boost_NO_BOOST_CMAKE OFF)
if (NOT APPLE)
- find_package(Boost 1.55.0 REQUIRED COMPONENTS thread regex filesystem
system date_time program_options)
+ find_package(Boost 1.73.0 REQUIRED COMPONENTS regex system filesystem
thread date_time program_options)
else()
- find_package(Boost 1.55.0 COMPONENTS thread regex filesystem system
date_time program_options)
+ find_package(Boost 1.73.0 COMPONENTS thread regex system filesystem
date_time program_options)
endif()
-include_directories(${Boost_INCLUDE_DIRS})
-message(STATUS ${Boost_LIBRARIES})
set(GPERFTOOLS_HOME "${THIRDPARTY_DIR}/gperftools")
@@ -313,10 +312,13 @@ check_function_exists(sched_getcpu HAVE_SCHED_GETCPU)
# -fno-omit-frame-pointers: Keep frame pointer for functions in register
set(CXX_COMMON_FLAGS "${CXX_COMMON_FLAGS} -Wall -Wno-sign-compare
-Wno-unknown-pragmas -pthread")
set(CXX_COMMON_FLAGS "${CXX_COMMON_FLAGS} -fno-strict-aliasing
-fno-omit-frame-pointer")
-set(CXX_COMMON_FLAGS "${CXX_COMMON_FLAGS} -std=gnu++11 -D__STDC_FORMAT_MACROS")
+set(CXX_COMMON_FLAGS "${CXX_COMMON_FLAGS} -std=gnu++17 -D__STDC_FORMAT_MACROS")
set(CXX_COMMON_FLAGS "${CXX_COMMON_FLAGS} -Wno-deprecated -Wno-vla")
set(CXX_COMMON_FLAGS "${CXX_COMMON_FLAGS}
-DBOOST_DATE_TIME_POSIX_TIME_STD_CONFIG")
set(CXX_COMMON_FLAGS "${CXX_COMMON_FLAGS} -DBOOST_SYSTEM_NO_DEPRECATED")
+# https://github.com/boostorg/uuid/issues/92
+# We need to avoid using SYS_getrandom system calls
+set(CXX_COMMON_FLAGS "${CXX_COMMON_FLAGS}
-DBOOST_UUID_RANDOM_PROVIDER_FORCE_POSIX=1")
if ("${CMAKE_BUILD_TARGET_ARCH}" STREQUAL "x86" OR
"${CMAKE_BUILD_TARGET_ARCH}" STREQUAL "x86_64")
set(CXX_COMMON_FLAGS "${CXX_COMMON_FLAGS} -msse4.2")
endif()
@@ -344,7 +346,7 @@ set(CXX_GCC_FLAGS "${CXX_GCC_FLAGS} -g
-Wno-unused-local-typedefs")
# Debug information is stored as dwarf2 to be as compatible as possible
# -Werror: compile warnings should be errors when using the toolchain
compiler.
# Only enable for debug builds because this is what we test in pre-commit
tests.
-set(CXX_FLAGS_DEBUG "${CXX_GCC_FLAGS} -Werror -ggdb3 -O0 -gdwarf-2")
+set(CXX_FLAGS_DEBUG "${CXX_GCC_FLAGS} -ggdb3 -O0 -gdwarf-2")
# For CMAKE_BUILD_TYPE=Release
# -O3: Enable all compiler optimizations
@@ -449,7 +451,12 @@ set(DORIS_DEPENDENCIES
librdkafka
libs2
snappy
- ${Boost_LIBRARIES}
+ Boost::regex
+ Boost::system
+ Boost::filesystem
+ Boost::thread
+ Boost::date_time
+ Boost::program_options
thrift
thriftnb
glog
diff --git a/be/src/exec/CMakeLists.txt b/be/src/exec/CMakeLists.txt
index 9f04d41..c6da8ed 100644
--- a/be/src/exec/CMakeLists.txt
+++ b/be/src/exec/CMakeLists.txt
@@ -15,8 +15,6 @@
# specific language governing permissions and limitations
# under the License.
-cmake_minimum_required(VERSION 2.6)
-
# where to put generated libraries
set(LIBRARY_OUTPUT_PATH "${BUILD_DIR}/src/exec")
diff --git a/be/src/exec/decompressor.cpp b/be/src/exec/decompressor.cpp
index 56c74cb..fe805a9 100644
--- a/be/src/exec/decompressor.cpp
+++ b/be/src/exec/decompressor.cpp
@@ -63,7 +63,7 @@ std::string Decompressor::debug_info() {
// Gzip
GzipDecompressor::GzipDecompressor(bool is_deflate)
- : Decompressor(_is_deflate ? CompressType::DEFLATE :
CompressType::GZIP),
+ : Decompressor(is_deflate ? CompressType::DEFLATE :
CompressType::GZIP),
_is_deflate(is_deflate) {}
GzipDecompressor::~GzipDecompressor() {
diff --git a/be/src/exec/olap_common.h b/be/src/exec/olap_common.h
index ca71dba..e5fa57e 100644
--- a/be/src/exec/olap_common.h
+++ b/be/src/exec/olap_common.h
@@ -435,16 +435,21 @@ void ColumnValueRange<T>::convert_to_fixed_value() {
return;
}
+ // Incrementing boolean is denied in C++17, So we use int as bool type
+ using type = std::conditional_t<std::is_same<bool, T>::value, int, T>;
+ type low_value = _low_value;
+ type high_value = _high_value;
+
if (_low_op == FILTER_LARGER) {
- ++_low_value;
+ ++low_value;
}
- for (T v = _low_value; v < _high_value; ++v) {
+ for (auto v = low_value; v < high_value; ++v) {
_fixed_values.insert(v);
}
if (_high_op == FILTER_LESS_OR_EQUAL) {
- _fixed_values.insert(_high_value);
+ _fixed_values.insert(high_value);
}
}
diff --git a/be/src/exec/scan_node.cpp b/be/src/exec/scan_node.cpp
index f355fe5..f292ed3 100644
--- a/be/src/exec/scan_node.cpp
+++ b/be/src/exec/scan_node.cpp
@@ -17,8 +17,6 @@
#include "exec/scan_node.h"
-#include <boost/bind.hpp>
-
namespace doris {
const std::string ScanNode::_s_bytes_read_counter = "BytesRead";
diff --git a/be/src/http/default_path_handlers.cpp
b/be/src/http/default_path_handlers.cpp
index 80755e2..5ea0095 100644
--- a/be/src/http/default_path_handlers.cpp
+++ b/be/src/http/default_path_handlers.cpp
@@ -21,7 +21,7 @@
#include <gperftools/malloc_extension.h>
#include <boost/algorithm/string.hpp>
-#include <boost/bind.hpp>
+#include <boost/bind/bind.hpp>
#include <sstream>
#include "agent/utils.h"
@@ -336,7 +336,7 @@ void add_default_path_handlers(WebPageHandler*
web_page_handler,
web_page_handler->register_page("/logs", "Logs", logs_handler, false /*
is_on_nav_bar */);
web_page_handler->register_page("/varz", "Configs", config_handler, true
/* is_on_nav_bar */);
web_page_handler->register_page(
- "/memz", "Memory", boost::bind<void>(&mem_usage_handler,
process_mem_tracker, _1, _2),
+ "/memz", "Memory", boost::bind<void>(&mem_usage_handler,
process_mem_tracker, boost::placeholders::_1, boost::placeholders::_2),
true /* is_on_nav_bar */);
web_page_handler->register_page("/mem_tracker", "MemTracker",
mem_tracker_handler,
true /* is_on_nav_bar */);
@@ -345,7 +345,7 @@ void add_default_path_handlers(WebPageHandler*
web_page_handler,
web_page_handler->register_page("/cpu", "CPU Profile", cpu_handler, true
/* is_on_nav_bar */);
register_thread_display_page(web_page_handler);
web_page_handler->register_template_page("/tablets_page", "Tablets",
-
boost::bind<void>(&display_tablets_callback, _1, _2),
+
boost::bind<void>(&display_tablets_callback, boost::placeholders::_1,
boost::placeholders::_2),
true /* is_on_nav_bar */);
}
diff --git a/be/src/http/ev_http_server.cpp b/be/src/http/ev_http_server.cpp
index d5bd907..63d211c 100644
--- a/be/src/http/ev_http_server.cpp
+++ b/be/src/http/ev_http_server.cpp
@@ -147,7 +147,7 @@ Status EvHttpServer::_bind() {
ss << "convert address failed, host=" << _host << ", port=" << _port;
return Status::InternalError(ss.str());
}
- _server_fd = butil::tcp_listen(point, true);
+ _server_fd = butil::tcp_listen(point);
if (_server_fd < 0) {
char buf[64];
std::stringstream ss;
diff --git a/be/src/olap/rowset/rowset.h b/be/src/olap/rowset/rowset.h
index 06ddbeb..b600e5b 100644
--- a/be/src/olap/rowset/rowset.h
+++ b/be/src/olap/rowset/rowset.h
@@ -18,6 +18,7 @@
#ifndef DORIS_BE_SRC_OLAP_ROWSET_ROWSET_H
#define DORIS_BE_SRC_OLAP_ROWSET_ROWSET_H
+#include <atomic>
#include <memory>
#include <mutex>
#include <vector>
diff --git a/be/src/olap/rowset/unique_rowset_id_generator.h
b/be/src/olap/rowset/unique_rowset_id_generator.h
index cb5d566..22909bc 100644
--- a/be/src/olap/rowset/unique_rowset_id_generator.h
+++ b/be/src/olap/rowset/unique_rowset_id_generator.h
@@ -17,6 +17,8 @@
#pragma once
+#include <atomic>
+
#include "olap/rowset/rowset_id_generator.h"
#include "util/spinlock.h"
#include "util/uid_util.h"
diff --git a/be/src/olap/storage_engine.cpp b/be/src/olap/storage_engine.cpp
index ed73ce2..670cd21 100644
--- a/be/src/olap/storage_engine.cpp
+++ b/be/src/olap/storage_engine.cpp
@@ -597,6 +597,7 @@ OLAPStatus StorageEngine::_start_trash_sweep(double* usage)
{
time_t now = time(nullptr); //获取UTC时间
tm local_tm_now;
+ local_tm_now.tm_isdst = 0;
if (localtime_r(&now, &local_tm_now) == nullptr) {
LOG(WARNING) << "fail to localtime_r time. time=" << now;
return OLAP_ERR_OS_ERROR;
@@ -721,6 +722,7 @@ OLAPStatus StorageEngine::_do_sweep(const string&
scan_root, const time_t& local
string dir_name = item->path().filename().string();
string str_time = dir_name.substr(0, dir_name.find('.'));
tm local_tm_create;
+ local_tm_create.tm_isdst = 0;
if (strptime(str_time.c_str(), "%Y%m%d%H%M%S", &local_tm_create)
== nullptr) {
LOG(WARNING) << "fail to strptime time. [time=" << str_time <<
"]";
res = OLAP_ERR_OS_ERROR;
diff --git a/be/src/olap/task/engine_batch_load_task.cpp
b/be/src/olap/task/engine_batch_load_task.cpp
index dc71791..a2718f0 100644
--- a/be/src/olap/task/engine_batch_load_task.cpp
+++ b/be/src/olap/task/engine_batch_load_task.cpp
@@ -161,7 +161,7 @@ AgentStatus EngineBatchLoadTask::_get_tmp_file_dir(const
string& root_path, stri
boost::system::error_code error_code;
boost::filesystem::create_directories(*download_path, error_code);
- if (0 != error_code) {
+ if (error_code.failed()) {
status = DORIS_ERROR;
LOG(WARNING) << "create download dir failed.path: " <<
*download_path
<< ", error code: " << error_code;
diff --git a/be/src/runtime/buffered_block_mgr2.cc
b/be/src/runtime/buffered_block_mgr2.cc
index 8ac9451..a59d6bf 100644
--- a/be/src/runtime/buffered_block_mgr2.cc
+++ b/be/src/runtime/buffered_block_mgr2.cc
@@ -781,7 +781,7 @@ Status BufferedBlockMgr2::write_unpinned_block(Block*
block) {
}
disk_id %= _io_mgr->num_local_disks();
DiskIoMgr::WriteRange::WriteDoneCallback callback =
- bind(mem_fn(&BufferedBlockMgr2::write_complete), this, block,
_1);
+ bind(mem_fn(&BufferedBlockMgr2::write_complete), this, block,
boost::placeholders::_1);
block->_write_range = _obj_pool.add(
new DiskIoMgr::WriteRange(tmp_file->path(), file_offset,
disk_id, callback));
block->_tmp_file = tmp_file;
diff --git a/be/src/runtime/buffered_tuple_stream2.cc
b/be/src/runtime/buffered_tuple_stream2.cc
index 43a974b..e0bcd5b 100644
--- a/be/src/runtime/buffered_tuple_stream2.cc
+++ b/be/src/runtime/buffered_tuple_stream2.cc
@@ -17,7 +17,7 @@
#include "runtime/buffered_tuple_stream2.h"
-#include <boost/bind.hpp>
+#include <boost/bind/bind.hpp>
#include "runtime/descriptors.h"
#include "runtime/row_batch.h"
diff --git a/be/src/runtime/buffered_tuple_stream3.cc
b/be/src/runtime/buffered_tuple_stream3.cc
index d021b1f..1267987 100644
--- a/be/src/runtime/buffered_tuple_stream3.cc
+++ b/be/src/runtime/buffered_tuple_stream3.cc
@@ -17,7 +17,7 @@
#include <gutil/strings/substitute.h>
-#include <boost/bind.hpp>
+#include <boost/bind/bind.hpp>
#include "runtime/buffered_tuple_stream3.inline.h"
#include "runtime/bufferpool/reservation_tracker.h"
diff --git a/be/src/runtime/bufferpool/buffer_allocator.cc
b/be/src/runtime/bufferpool/buffer_allocator.cc
index e3350e5..8dbdb45 100644
--- a/be/src/runtime/bufferpool/buffer_allocator.cc
+++ b/be/src/runtime/bufferpool/buffer_allocator.cc
@@ -17,7 +17,7 @@
#include "runtime/bufferpool/buffer_allocator.h"
-#include <boost/bind.hpp>
+#include <boost/bind/bind.hpp>
#include <mutex>
#include "common/atomic.h"
@@ -721,8 +721,7 @@ std::string BufferPool::FreeBufferArena::DebugString() {
<< " free buffers: " << lists.num_free_buffers.load()
<< " low water mark: " << lists.low_water_mark
<< " clean pages: " << lists.num_clean_pages.load() << " ";
- lists.clean_pages.iterate(boost::bind<bool>(Page::DebugStringCallback,
&ss, _1));
-
+ lists.clean_pages.iterate(boost::bind<bool>(Page::DebugStringCallback,
&ss, boost::placeholders::_1));
ss << "\n";
}
return ss.str();
diff --git a/be/src/runtime/bufferpool/buffer_pool.cc
b/be/src/runtime/bufferpool/buffer_pool.cc
index 38c324c..f2749e4 100644
--- a/be/src/runtime/bufferpool/buffer_pool.cc
+++ b/be/src/runtime/bufferpool/buffer_pool.cc
@@ -15,7 +15,7 @@
// specific language governing permissions and limitations
// under the License.
-#include <boost/bind.hpp>
+#include <boost/bind/bind.hpp>
#include <limits>
#include <sstream>
@@ -700,11 +700,11 @@ string BufferPool::Client::DebugString() {
<< " in_flight_write_bytes: " << in_flight_write_pages_.bytes()
<< " reservation: " << reservation_.DebugString();
ss << "\n " << pinned_pages_.size() << " pinned pages: ";
- pinned_pages_.iterate(boost::bind<bool>(Page::DebugStringCallback, &ss,
_1));
+ pinned_pages_.iterate(boost::bind<bool>(Page::DebugStringCallback, &ss,
boost::placeholders::_1));
ss << "\n " << dirty_unpinned_pages_.size() << " dirty unpinned pages: ";
- dirty_unpinned_pages_.iterate(boost::bind<bool>(Page::DebugStringCallback,
&ss, _1));
+ dirty_unpinned_pages_.iterate(boost::bind<bool>(Page::DebugStringCallback,
&ss, boost::placeholders::_1));
ss << "\n " << in_flight_write_pages_.size() << " in flight write pages:
";
-
in_flight_write_pages_.iterate(boost::bind<bool>(Page::DebugStringCallback,
&ss, _1));
+
in_flight_write_pages_.iterate(boost::bind<bool>(Page::DebugStringCallback,
&ss, boost::placeholders::_1));
return ss.str();
}
diff --git a/be/src/runtime/client_cache.h b/be/src/runtime/client_cache.h
index 8286853..b84db1c 100644
--- a/be/src/runtime/client_cache.h
+++ b/be/src/runtime/client_cache.h
@@ -18,7 +18,7 @@
#ifndef DORIS_BE_RUNTIME_CLIENT_CACHE_H
#define DORIS_BE_RUNTIME_CLIENT_CACHE_H
-#include <boost/bind.hpp>
+#include <boost/bind/bind.hpp>
#include <boost/thread/mutex.hpp>
#include <boost/unordered_map.hpp>
#include <list>
@@ -191,12 +191,12 @@ public:
ClientCache() : _client_cache_helper() {
_client_factory =
boost::bind<ThriftClientImpl*>(boost::mem_fn(&ClientCache::make_client),
- this, _1, _2);
+ this,
boost::placeholders::_1, boost::placeholders::_2);
}
ClientCache(int max_cache_size) : _client_cache_helper(max_cache_size) {
_client_factory =
boost::bind<ThriftClientImpl*>(boost::mem_fn(&ClientCache::make_client),
- this, _1, _2);
+ this,
boost::placeholders::_1, boost::placeholders::_2);
}
// Close all clients connected to the supplied address, (e.g., in
diff --git a/be/src/runtime/data_stream_mgr.h b/be/src/runtime/data_stream_mgr.h
index 7758a46..2fec5ef 100644
--- a/be/src/runtime/data_stream_mgr.h
+++ b/be/src/runtime/data_stream_mgr.h
@@ -104,7 +104,7 @@ private:
// less-than ordering for pair<TUniqueId, PlanNodeId>
struct ComparisonOp {
bool operator()(const std::pair<doris::TUniqueId, PlanNodeId>& a,
- const std::pair<doris::TUniqueId, PlanNodeId>& b) {
+ const std::pair<doris::TUniqueId, PlanNodeId>& b)
const {
if (a.first.hi < b.first.hi) {
return true;
} else if (a.first.hi > b.first.hi) {
diff --git a/be/src/runtime/data_stream_recvr.cc
b/be/src/runtime/data_stream_recvr.cc
index 944c7d7..0962b3c 100644
--- a/be/src/runtime/data_stream_recvr.cc
+++ b/be/src/runtime/data_stream_recvr.cc
@@ -368,7 +368,7 @@ Status DataStreamRecvr::create_merger(const
TupleRowComparator& less_than) {
for (int i = 0; i < _sender_queues.size(); ++i) {
child_input_batch_suppliers.emplace_back(
- bind(mem_fn(&SenderQueue::get_batch), _sender_queues[i], _1));
+ bind(mem_fn(&SenderQueue::get_batch), _sender_queues[i],
boost::placeholders::_1));
}
RETURN_IF_ERROR(_merger->prepare(child_input_batch_suppliers));
return Status::OK();
@@ -403,13 +403,13 @@ Status DataStreamRecvr::create_parallel_merger(const
TupleRowComparator& less_th
less_than, &_row_desc, _profile, mem_tracker, batch_size,
false));
vector<SortedRunMerger::RunBatchSupplier> input_batch_suppliers;
for (int j = i; j < std::min((size_t)i + step, _sender_queues.size());
++j) {
- input_batch_suppliers.emplace_back(
- bind(mem_fn(&SenderQueue::get_batch), _sender_queues[j],
_1));
+
input_batch_suppliers.emplace_back(bind(mem_fn(&SenderQueue::get_batch),
+ _sender_queues[j],
boost::placeholders::_1));
}
child_merger->prepare(input_batch_suppliers);
- child_input_batch_suppliers.emplace_back(
- bind(mem_fn(&SortedRunMerger::get_batch), child_merger.get(),
_1));
+
child_input_batch_suppliers.emplace_back(bind(mem_fn(&SortedRunMerger::get_batch),
+ child_merger.get(),
boost::placeholders::_1));
_child_mergers.emplace_back(std::move(child_merger));
}
RETURN_IF_ERROR(_merger->prepare(child_input_batch_suppliers, true));
diff --git a/be/src/runtime/fragment_mgr.cpp b/be/src/runtime/fragment_mgr.cpp
index 089921a..bc22aee 100644
--- a/be/src/runtime/fragment_mgr.cpp
+++ b/be/src/runtime/fragment_mgr.cpp
@@ -20,7 +20,7 @@
#include <gperftools/profiler.h>
#include <thrift/protocol/TDebugProtocol.h>
-#include <boost/bind.hpp>
+#include <boost/bind/bind.hpp>
#include <memory>
#include <sstream>
@@ -167,9 +167,9 @@ FragmentExecState::FragmentExecState(const TUniqueId&
query_id,
_fragment_instance_id(fragment_instance_id),
_backend_num(backend_num),
_exec_env(exec_env),
- _executor(exec_env,
-
boost::bind<void>(boost::mem_fn(&FragmentExecState::coordinator_callback), this,
- _1, _2, _3)),
+ _executor(exec_env,
boost::bind<void>(boost::mem_fn(&FragmentExecState::coordinator_callback),
+ this, boost::placeholders::_1,
boost::placeholders::_2,
+ boost::placeholders::_3)),
_timeout_second(-1),
_fragments_ctx(fragments_ctx) {
_start_time = DateTimeValue::local_time();
@@ -184,9 +184,9 @@ FragmentExecState::FragmentExecState(const TUniqueId&
query_id,
_backend_num(backend_num),
_exec_env(exec_env),
_coord_addr(coord_addr),
- _executor(exec_env,
-
boost::bind<void>(boost::mem_fn(&FragmentExecState::coordinator_callback), this,
- _1, _2, _3)),
+ _executor(exec_env,
boost::bind<void>(boost::mem_fn(&FragmentExecState::coordinator_callback),
+ this, boost::placeholders::_1,
boost::placeholders::_2,
+ boost::placeholders::_3)),
_timeout_second(-1) {
_start_time = DateTimeValue::local_time();
}
@@ -385,17 +385,17 @@ FragmentMgr::FragmentMgr(ExecEnv* exec_env)
});
auto s = Thread::create(
- "FragmentMgr", "cancel_timeout_plan_fragment",
- [this]() { this->cancel_worker(); }, &_cancel_thread);
+ "FragmentMgr", "cancel_timeout_plan_fragment", [this]() {
this->cancel_worker(); },
+ &_cancel_thread);
CHECK(s.ok()) << s.to_string();
// TODO(zc): we need a better thread-pool
// now one user can use all the thread pool, others have no resource.
s = ThreadPoolBuilder("FragmentMgrThreadPool")
- .set_min_threads(config::fragment_pool_thread_num_min)
- .set_max_threads(config::fragment_pool_thread_num_max)
- .set_max_queue_size(config::fragment_pool_queue_size)
- .build(&_thread_pool);
+ .set_min_threads(config::fragment_pool_thread_num_min)
+ .set_max_threads(config::fragment_pool_thread_num_max)
+ .set_max_queue_size(config::fragment_pool_queue_size)
+ .build(&_thread_pool);
CHECK(s.ok()) << s.to_string();
}
diff --git a/be/src/runtime/result_buffer_mgr.cpp
b/be/src/runtime/result_buffer_mgr.cpp
index 3889818..247acc0 100644
--- a/be/src/runtime/result_buffer_mgr.cpp
+++ b/be/src/runtime/result_buffer_mgr.cpp
@@ -17,7 +17,7 @@
#include "runtime/result_buffer_mgr.h"
-#include <boost/bind.hpp>
+#include <boost/bind/bind.hpp>
#include "gen_cpp/PaloInternalService_types.h"
#include "gen_cpp/types.pb.h"
diff --git a/be/src/runtime/snapshot_loader.cpp
b/be/src/runtime/snapshot_loader.cpp
index 1e863ed..eccd0b0 100644
--- a/be/src/runtime/snapshot_loader.cpp
+++ b/be/src/runtime/snapshot_loader.cpp
@@ -298,7 +298,7 @@ Status SnapshotLoader::download(const std::map<std::string,
std::string>& src_to
status = FileUtils::md5sum(full_local_file, &downloaded_md5sum);
if (!status.ok()) {
std::stringstream ss;
- ss << "failed to get md5sum of file: " << full_local_file;
+ ss << "failed to get md5sum of file: " << full_local_file <<
", err: " << status.get_error_msg();
LOG(WARNING) << ss.str();
return Status::InternalError(ss.str());
}
diff --git a/be/src/runtime/spill_sorter.cc b/be/src/runtime/spill_sorter.cc
index 163dc33..24985df 100644
--- a/be/src/runtime/spill_sorter.cc
+++ b/be/src/runtime/spill_sorter.cc
@@ -1316,7 +1316,7 @@ Status SpillSorter::create_merger(int num_runs) {
RETURN_IF_ERROR(run->prepare_read());
// Run::get_next_batch() is used by the merger to retrieve a batch of
rows to merge
// from this run.
- merge_runs.push_back(bind<Status>(mem_fn(&Run::get_next_batch), run,
_1));
+ merge_runs.push_back(bind<Status>(mem_fn(&Run::get_next_batch), run,
boost::placeholders::_1));
_sorted_runs.pop_front();
_merging_runs.push_back(run);
}
diff --git a/be/src/runtime/user_function_cache.cpp
b/be/src/runtime/user_function_cache.cpp
index 8661ade..f173feb 100644
--- a/be/src/runtime/user_function_cache.cpp
+++ b/be/src/runtime/user_function_cache.cpp
@@ -19,6 +19,7 @@
#include <boost/algorithm/string/classification.hpp> // boost::is_any_of
#include <boost/algorithm/string/predicate.hpp> //
boost::algorithm::ends_with
+#include <atomic>
#include <regex>
#include <vector>
diff --git a/be/src/util/thrift_server.cpp b/be/src/util/thrift_server.cpp
index 1f79082..dc5a5ed 100644
--- a/be/src/util/thrift_server.cpp
+++ b/be/src/util/thrift_server.cpp
@@ -94,12 +94,15 @@ private:
bool _signal_fired;
// The time, in milliseconds, to wait for a server to come up
- static const int TIMEOUT_MS = 2500;
+ const static int TIMEOUT_MS;
// Called in a separate thread; wraps TNonBlockingServer::serve in an
exception handler
void supervise();
};
+//
https://stackoverflow.com/questions/5391973/undefined-reference-to-static-const-int
+const int ThriftServer::ThriftServerEventProcessor::TIMEOUT_MS = 2500;
+
Status ThriftServer::ThriftServerEventProcessor::start_and_wait_for_server() {
// Locking here protects against missed notifications if Supervise
executes quickly
boost::unique_lock<boost::mutex> lock(_signal_lock);
diff --git a/be/test/exprs/topn_function_test.cpp
b/be/test/exprs/topn_function_test.cpp
index 7648a25..ac2c9e9 100644
--- a/be/test/exprs/topn_function_test.cpp
+++ b/be/test/exprs/topn_function_test.cpp
@@ -87,7 +87,7 @@ void test_topn_accuracy(FunctionContext* ctx, int key_space,
int space_expand_ra
random_strs[i] = gen_random(10);
}
- zipf_distribution<uint64_t, double> zf(key_space,
zipf_distribution_exponent);
+ zipf_distribution<uint64_t, double> zf(key_space - 1,
zipf_distribution_exponent);
std::random_device rd;
std::mt19937 gen(rd());
@@ -113,7 +113,7 @@ void test_topn_accuracy(FunctionContext* ctx, int
key_space, int space_expand_ra
std::uniform_int_distribution<> dist(0, PARALLEL-1);
for (uint32_t i = 0; i < TOTAL_RECORDS; ++i) {
// generate zipf_distribution
- uint32_t index = zf(gen) - 1;
+ uint32_t index = zf(gen);
// choose one single topn to update
topn_single(ctx, random_strs[index], single_dst_str[dist(random_gen)],
accuracy_map);
}
diff --git a/env.sh b/env.sh
index 0d105e0..7c179a0 100755
--- a/env.sh
+++ b/env.sh
@@ -16,6 +16,8 @@
# under the License.
# check DORIS_HOME
+export LC_ALL=C
+
if [[ -z ${DORIS_HOME} ]]; then
echo "Error: DORIS_HOME is not set"
exit 1
@@ -61,6 +63,23 @@ if [[ ! "$(printf '%s\n' "$required_ver" "$gcc_ver" | sort
-V | head -n1)" = "$r
exit 1
fi
+# register keyword is forbidden to use in C++17
+# the C++ code generated by flex that remove register keyword after version
2.6.0
+# so we need check flex version here to avoid compilation failed
+flex_ver=`flex --version | awk '{print $2}'`
+required_ver="2.6.0"
+if [[ ! "$(printf '%s\n' "$required_ver" "$flex_ver" | sort -V | head -n1)" =
"$required_ver" ]]; then
+ echo "Error: flex version (${flex_ver}) must be greater than or equal to
${required_ver}"
+ exit 1
+fi
+
+# find binutils
+if test -x ${DORIS_GCC_HOME}/bin/ld ;then
+ export DORIS_BIN_UTILS=${DORIS_GCC_HOME}/bin/
+else
+ export DORIS_BIN_UTILS=/usr/bin/
+fi
+
# export CLANG COMPATIBLE FLAGS
export CLANG_COMPATIBLE_FLAGS=`echo | ${DORIS_GCC_HOME}/bin/gcc -Wp,-v -xc++ -
-fsyntax-only 2>&1 \
| grep -E '^\s+/' | awk '{print "-I" $1}' | tr '\n' ' '`
diff --git a/fe/fe-core/src/main/java/org/apache/doris/common/Config.java
b/fe/fe-core/src/main/java/org/apache/doris/common/Config.java
index 0f98a88..27206c6 100644
--- a/fe/fe-core/src/main/java/org/apache/doris/common/Config.java
+++ b/fe/fe-core/src/main/java/org/apache/doris/common/Config.java
@@ -1167,7 +1167,7 @@ public class Config extends ConfigBase {
* If set to true, Doris will check if the compiled and running versions
of Java are compatible
*/
@ConfField
- public static boolean check_java_version = true;
+ public static boolean check_java_version = false;
/**
* control materialized view
diff --git a/thirdparty/build-thirdparty.sh b/thirdparty/build-thirdparty.sh
index aef8599..7cc907d 100755
--- a/thirdparty/build-thirdparty.sh
+++ b/thirdparty/build-thirdparty.sh
@@ -162,7 +162,7 @@ build_libevent() {
CFLAGS="-std=c99 -fPIC -D_BSD_SOURCE -fno-omit-frame-pointer -g -ggdb -O2
-I${TP_INCLUDE_DIR}" \
LDFLAGS="-L${TP_LIB_DIR}" \
./configure --prefix=$TP_INSTALL_DIR --enable-shared=no --disable-samples
--disable-libevent-regress
- make -j$PARALLEL && make install
+ make -j $PARALLEL && make install
}
build_openssl() {
@@ -181,7 +181,7 @@ build_openssl() {
CFLAGS="-fPIC" \
LIBDIR="lib" \
./Configure --prefix=$TP_INSTALL_DIR -zlib -shared ${OPENSSL_PLATFORM}
- make -j$PARALLEL && make install_sw
+ make -j $PARALLEL && make install_sw
# NOTE(zc): remove this dynamic library files to make libcurl static link.
# If I don't remove this files, I don't known how to make libcurl link
static library
if [ -f $TP_INSTALL_DIR/lib64/libcrypto.so ]; then
@@ -213,7 +213,7 @@ build_thrift() {
mv compiler/cpp/thrifty.hh compiler/cpp/thrifty.h
fi
- make -j$PARALLEL && make install
+ make -j $PARALLEL && make install
}
# llvm
@@ -241,7 +241,7 @@ build_llvm() {
rm -rf CMakeCache.txt CMakeFiles/
LDFLAGS="-L${TP_LIB_DIR} -static-libstdc++ -static-libgcc" \
${CMAKE_CMD} -G "${GENERATOR}" -DLLVM_REQUIRES_RTTI:Bool=True
-DLLVM_TARGETS_TO_BUILD=${LLVM_TARGET} -DLLVM_ENABLE_TERMINFO=OFF
LLVM_BUILD_LLVM_DYLIB:BOOL=OFF -DLLVM_ENABLE_PIC=true -DBUILD_SHARED_LIBS=OFF
-DCMAKE_BUILD_TYPE="RELEASE" -DCMAKE_INSTALL_PREFIX=$TP_INSTALL_DIR/llvm
../$LLVM_SOURCE
- ${BUILD_SYSTEM} -j$PARALLEL REQUIRES_RTTI=1 && ${BUILD_SYSTEM} install
+ ${BUILD_SYSTEM} -j $PARALLEL REQUIRES_RTTI=1 && ${BUILD_SYSTEM} install
}
# protobuf
@@ -257,7 +257,7 @@ build_protobuf() {
cd src
sed -i 's/^AM_LDFLAGS\(.*\)$/AM_LDFLAGS\1 -all-static/' Makefile
cd -
- make -j$PARALLEL && make install
+ make -j $PARALLEL && make install
}
# gflags
@@ -269,7 +269,7 @@ build_gflags() {
rm -rf CMakeCache.txt CMakeFiles/
${CMAKE_CMD} -G "${GENERATOR}" -DCMAKE_INSTALL_PREFIX=$TP_INSTALL_DIR \
-DCMAKE_POSITION_INDEPENDENT_CODE=On ../
- ${BUILD_SYSTEM} -j$PARALLEL && ${BUILD_SYSTEM} install
+ ${BUILD_SYSTEM} -j $PARALLEL && ${BUILD_SYSTEM} install
}
# glog
@@ -285,7 +285,7 @@ build_glog() {
LDFLAGS="-L${TP_LIB_DIR}" \
CFLAGS="-fPIC" \
./configure --prefix=$TP_INSTALL_DIR --enable-frame-pointers
--disable-shared --enable-static
- make -j$PARALLEL && make install
+ make -j $PARALLEL && make install
}
# gtest
@@ -297,7 +297,7 @@ build_gtest() {
rm -rf CMakeCache.txt CMakeFiles/
${CMAKE_CMD} -G "${GENERATOR}" -DCMAKE_INSTALL_PREFIX=$TP_INSTALL_DIR \
-DCMAKE_POSITION_INDEPENDENT_CODE=On ../
- ${BUILD_SYSTEM} -j$PARALLEL && ${BUILD_SYSTEM} install
+ ${BUILD_SYSTEM} -j $PARALLEL && ${BUILD_SYSTEM} install
}
# rapidjson
@@ -319,7 +319,7 @@ build_snappy() {
-DCMAKE_POSITION_INDEPENDENT_CODE=On \
-DCMAKE_INSTALL_INCLUDEDIR=$TP_INCLUDE_DIR/snappy \
-DSNAPPY_BUILD_TESTS=0 ../
- ${BUILD_SYSTEM} -j$PARALLEL && ${BUILD_SYSTEM} install
+ ${BUILD_SYSTEM} -j $PARALLEL && ${BUILD_SYSTEM} install
#build for libarrow.a
cp $TP_INCLUDE_DIR/snappy/snappy-c.h $TP_INCLUDE_DIR/snappy-c.h && \
@@ -344,7 +344,7 @@ build_gperftools() {
LD_LIBRARY_PATH="${TP_LIB_DIR}" \
CFLAGS="-fPIC" \
./configure --prefix=$TP_INSTALL_DIR/gperftools --disable-shared
--enable-static --disable-libunwind --with-pic --enable-frame-pointers
- make -j$PARALLEL && make install
+ make -j $PARALLEL && make install
}
# zlib
@@ -356,7 +356,7 @@ build_zlib() {
LDFLAGS="-L${TP_LIB_DIR}" \
CFLAGS="-fPIC" \
./configure --prefix=$TP_INSTALL_DIR --static
- make -j$PARALLEL && make install
+ make -j $PARALLEL && make install
}
# lz4
@@ -364,7 +364,7 @@ build_lz4() {
check_if_source_exist $LZ4_SOURCE
cd $TP_SOURCE_DIR/$LZ4_SOURCE
- make -j$PARALLEL install PREFIX=$TP_INSTALL_DIR \
+ make -j $PARALLEL install PREFIX=$TP_INSTALL_DIR \
INCLUDEDIR=$TP_INCLUDE_DIR/lz4/
}
@@ -374,7 +374,7 @@ build_bzip() {
cd $TP_SOURCE_DIR/$BZIP_SOURCE
CFLAGS="-fPIC"
- make -j$PARALLEL install PREFIX=$TP_INSTALL_DIR
+ make -j $PARALLEL install PREFIX=$TP_INSTALL_DIR
}
# lzo2
@@ -386,7 +386,7 @@ build_lzo2() {
LDFLAGS="-L${TP_LIB_DIR}" \
CFLAGS="-fPIC" \
./configure --prefix=$TP_INSTALL_DIR --disable-shared --enable-static
- make -j$PARALLEL && make install
+ make -j $PARALLEL && make install
}
# curl
@@ -398,8 +398,9 @@ build_curl() {
LDFLAGS="-L${TP_LIB_DIR}" LIBS="-lcrypto -lssl -lcrypto -ldl" \
CFLAGS="-fPIC" \
./configure --prefix=$TP_INSTALL_DIR --disable-shared --enable-static \
- --without-librtmp --without-libssh2 --without-nghttp2
--with-ssl=${TP_INSTALL_DIR} --without-libidn2 --disable-ldap --enable-ipv6
- make -j$PARALLEL && make install
+ --without-librtmp --with-ssl=${TP_INSTALL_DIR} --without-libidn2
--disable-ldap --enable-ipv6 \
+ --without-libssh2
+ make -j $PARALLEL && make install
}
# re2
@@ -408,7 +409,7 @@ build_re2() {
cd $TP_SOURCE_DIR/$RE2_SOURCE
${CMAKE_CMD} -G "${GENERATOR}" -DBUILD_SHARED_LIBS=0
-DCMAKE_INSTALL_PREFIX=$TP_INSTALL_DIR
- ${BUILD_SYSTEM} -j$PARALLEL install
+ ${BUILD_SYSTEM} -j $PARALLEL install
}
# boost
@@ -416,29 +417,28 @@ build_boost() {
check_if_source_exist $BOOST_SOURCE
cd $TP_SOURCE_DIR/$BOOST_SOURCE
- echo "using gcc : doris : ${CXX} ; " > tools/build/src/user-config.jam
- ./bootstrap.sh --prefix=$TP_INSTALL_DIR
- ./b2 --toolset=gcc-doris link=static -d0 -j$PARALLEL --without-mpi
--without-graph --without-graph_parallel --without-python cxxflags="-std=c++11
-fPIC -I$TP_INCLUDE_DIR -L$TP_LIB_DIR" install
+ ./bootstrap.sh --prefix=$TP_INSTALL_DIR
+ ./b2 link=static runtime-link=static -j $PARALLEL --without-mpi
--without-graph --without-graph_parallel --without-python cxxflags="-std=c++11
-g -fPIC -I$TP_INCLUDE_DIR -L$TP_LIB_DIR" install
}
# mysql
build_mysql() {
check_if_source_exist $MYSQL_SOURCE
- check_if_source_exist $BOOST_FOR_MYSQL_SOURCE
+ check_if_source_exist $BOOST_SOURCE
cd $TP_SOURCE_DIR/$MYSQL_SOURCE
mkdir -p $BUILD_DIR && cd $BUILD_DIR
rm -rf CMakeCache.txt CMakeFiles/
- if [ ! -d $BOOST_FOR_MYSQL_SOURCE ]; then
- cp -rf $TP_SOURCE_DIR/$BOOST_FOR_MYSQL_SOURCE ./
+ if [ ! -d $BOOST_SOURCE ]; then
+ cp -rf $TP_SOURCE_DIR/$BOOST_SOURCE ./
fi
- ${CMAKE_CMD} -G "${GENERATOR}" ../
-DWITH_BOOST=`pwd`/$BOOST_FOR_MYSQL_SOURCE
-DCMAKE_INSTALL_PREFIX=$TP_INSTALL_DIR/mysql/ \
+ ${CMAKE_CMD} -G "${GENERATOR}" ../ -DWITH_BOOST=`pwd`/$BOOST_SOURCE
-DCMAKE_INSTALL_PREFIX=$TP_INSTALL_DIR/mysql/ \
-DCMAKE_INCLUDE_PATH=$TP_INCLUDE_DIR -DWITHOUT_SERVER=1
-DWITH_ZLIB=$TP_INSTALL_DIR \
-DCMAKE_CXX_FLAGS_RELWITHDEBINFO="-O3 -g -fabi-version=2
-fno-omit-frame-pointer -fno-strict-aliasing -std=gnu++11" \
-DDISABLE_SHARED=1 -DBUILD_SHARED_LIBS=0
- ${BUILD_SYSTEM} -j$PARALLEL mysqlclient
+ ${BUILD_SYSTEM} -j $PARALLEL mysqlclient
# copy headers manually
rm -rf ../../../installed/include/mysql/
@@ -457,7 +457,7 @@ build_mysql() {
build_leveldb() {
check_if_source_exist $LEVELDB_SOURCE
cd $TP_SOURCE_DIR/$LEVELDB_SOURCE
- CXXFLAGS="-fPIC" make -j$PARALLEL
+ CXXFLAGS="-fPIC" make -j $PARALLEL
cp out-static/libleveldb.a ../../installed/lib/libleveldb.a
cp -r include/leveldb ../../installed/include/
}
@@ -471,9 +471,10 @@ build_brpc() {
rm -rf CMakeCache.txt CMakeFiles/
LDFLAGS="-L${TP_LIB_DIR} -static-libstdc++ -static-libgcc" \
${CMAKE_CMD} -G "${GENERATOR}" -v -DBUILD_SHARED_LIBS=0
-DCMAKE_INSTALL_PREFIX=$TP_INSTALL_DIR \
- -DBRPC_WITH_GLOG=ON -DWITH_GLOG=ON
-DCMAKE_INCLUDE_PATH="$TP_INSTALL_DIR/include" \
+ -DBRPC_WITH_GLOG=ON -DWITH_GLOG=ON
-DGFLAGS_LIBRARY=$TP_INSTALL_DIR/lib/libgflags.a -DGLOG_LIB=$TP_INSTALL_DIR/lib
\
+ -DGFLAGS_INCLUDE_DIR=$TP_INSTALL_DIR/include
-DGLOG_LIB=$TP_INSTALL_DIR/lib/libglog.a
-DCMAKE_INCLUDE_PATH="$TP_INSTALL_DIR/include" \
-DPROTOBUF_PROTOC_EXECUTABLE=$TP_INSTALL_DIR/bin/protoc ..
- ${BUILD_SYSTEM} -j$PARALLEL && ${BUILD_SYSTEM} install
+ ${BUILD_SYSTEM} -j $PARALLEL && ${BUILD_SYSTEM} install
}
# rocksdb
@@ -483,7 +484,7 @@ build_rocksdb() {
cd $TP_SOURCE_DIR/$ROCKSDB_SOURCE
CFLAGS="-I ${TP_INCLUDE_DIR} -I ${TP_INCLUDE_DIR}/snappy -I
${TP_INCLUDE_DIR}/lz4" CXXFLAGS="-fPIC -Wno-deprecated-copy
-Wno-stringop-truncation -Wno-pessimizing-move" LDFLAGS="-static-libstdc++
-static-libgcc" \
- PORTABLE=1 make USE_RTTI=1 -j$PARALLEL static_lib
+ PORTABLE=1 make USE_RTTI=1 -j $PARALLEL static_lib
cp librocksdb.a ../../installed/lib/librocksdb.a
cp -r include/rocksdb ../../installed/include/
}
@@ -498,7 +499,7 @@ build_librdkafka() {
LDFLAGS="-L${TP_LIB_DIR}" \
CFLAGS="-fPIC" \
./configure --prefix=$TP_INSTALL_DIR --enable-static --disable-sasl
- make -j$PARALLEL && make install
+ make -j $PARALLEL && make install
}
# libunixodbc
@@ -511,7 +512,7 @@ build_libunixodbc() {
LDFLAGS="-L${TP_LIB_DIR}" \
CFLAGS="-fPIC" \
./configure --prefix=$TP_INSTALL_DIR --with-included-ltdl
--enable-static=yes
- make -j$PARALLEL && make install
+ make -j $PARALLEL && make install
}
# flatbuffers
@@ -523,7 +524,7 @@ build_flatbuffers() {
CXXFLAGS="-fPIC -Wno-class-memaccess" \
LDFLAGS="-static-libstdc++ -static-libgcc" \
${CMAKE_CMD} -G "${GENERATOR}" ..
- ${BUILD_SYSTEM} -j$PARALLEL
+ ${BUILD_SYSTEM} -j $PARALLEL
cp flatc ../../../installed/bin/flatc
cp -r ../include/flatbuffers ../../../installed/include/flatbuffers
cp libflatbuffers.a ../../../installed/lib/libflatbuffers.a
@@ -543,8 +544,10 @@ build_arrow() {
export ARROW_Thrift_URL=${TP_SOURCE_DIR}/${THRIFT_NAME}
export LDFLAGS="-L${TP_LIB_DIR} -static-libstdc++ -static-libgcc"
+ #--trace-expand \
${CMAKE_CMD} -G "${GENERATOR}" -DARROW_PARQUET=ON -DARROW_IPC=ON
-DARROW_USE_GLOG=off \
-DARROW_BUILD_SHARED=OFF -DARROW_BUILD_STATIC=ON -DARROW_WITH_ZSTD=ON \
+ -DLZ4_INCLUDE_DIR=$TP_INSTALL_DIR \
-DCMAKE_INSTALL_PREFIX=$TP_INSTALL_DIR \
-DCMAKE_INSTALL_LIBDIR=lib64 \
-DARROW_BOOST_USE_SHARED=OFF -DARROW_GFLAGS_USE_SHARED=OFF \
@@ -553,12 +556,17 @@ build_arrow() {
-Dgflags_ROOT=$TP_INSTALL_DIR/ \
-DSnappy_ROOT=$TP_INSTALL_DIR/ \
-DGLOG_ROOT=$TP_INSTALL_DIR/ \
+ -DGFLAGS_LIBRARY=$TP_INSTALL_DIR/lib/libgflags.a \
+ -DGLOG_LIB=$TP_INSTALL_DIR/lib/libglog.a \
-DLZ4_ROOT=$TP_INSTALL_DIR/ \
+ -DLZ4_INCLUDE_DIR=$TP_INSTALL_DIR/include/lz4 \
-DZSTD_SOURCE=BUNDLED \
+ -DZLIB_LIBRARY=$TP_INSTALL_DIR/lib/libz.a
-DZLIB_INCLUDE_DIR=$TP_INSTALL_DIR/include \
+ -DGFLAGS_LIBRARY=$TP_INSTALL_DIR/lib/libgflags.a \
-Ddouble-conversion_SOURCE=BUNDLED \
-DThrift_ROOT=$TP_INSTALL_DIR/ ..
- ${BUILD_SYSTEM} -j$PARALLEL && ${BUILD_SYSTEM} install
+ ${BUILD_SYSTEM} -j $PARALLEL && ${BUILD_SYSTEM} install
#copy dep libs
cp -rf ./jemalloc_ep-prefix/src/jemalloc_ep/dist/lib/libjemalloc_pic.a
$TP_INSTALL_DIR/lib64/libjemalloc.a
@@ -587,8 +595,9 @@ build_s2() {
-DGFLAGS_ROOT_DIR="$TP_INSTALL_DIR/include" \
-DWITH_GFLAGS=ON \
-DGLOG_ROOT_DIR="$TP_INSTALL_DIR/include" \
+ -DGFLAGS_LIBRARY=$TP_INSTALL_DIR/lib/libgflags.a \
-DWITH_GLOG=ON ..
- ${BUILD_SYSTEM} -j$PARALLEL && ${BUILD_SYSTEM} install
+ ${BUILD_SYSTEM} -j $PARALLEL && ${BUILD_SYSTEM} install
}
# bitshuffle
@@ -616,26 +625,26 @@ build_bitshuffle() {
fi
tmp_obj=bitshuffle_${arch}_tmp.o
dst_obj=bitshuffle_${arch}.o
- ${CC:-gcc} $EXTRA_CFLAGS $arch_flag -std=c99 -I$PREFIX/include/lz4/
-O3 -DNDEBUG -fPIC -c \
+ ${CC:-$DORIS_GCC_HOME/bin/gcc} $EXTRA_CFLAGS $arch_flag -std=c99
-I$PREFIX/include/lz4/ -O3 -DNDEBUG -fPIC -c \
"src/bitshuffle_core.c" \
"src/bitshuffle.c" \
"src/iochain.c"
# Merge the object files together to produce a combined .o file.
- ld -r -o $tmp_obj bitshuffle_core.o bitshuffle.o iochain.o
+ $DORIS_BIN_UTILS/ld -r -o $tmp_obj bitshuffle_core.o bitshuffle.o
iochain.o
# For the AVX2 symbols, suffix them.
if [ "$arch" == "avx2" ]; then
# Create a mapping file with '<old_sym> <suffixed_sym>' on each
line.
- nm --defined-only --extern-only $tmp_obj | while read addr type
sym ; do
+ $DORIS_BIN_UTILS/nm --defined-only --extern-only $tmp_obj | while
read addr type sym ; do
echo ${sym} ${sym}_${arch}
done > renames.txt
- objcopy --redefine-syms=renames.txt $tmp_obj $dst_obj
+ $DORIS_BIN_UTILS/objcopy --redefine-syms=renames.txt $tmp_obj
$dst_obj
else
mv $tmp_obj $dst_obj
fi
to_link="$to_link $dst_obj"
done
rm -f libbitshuffle.a
- ar rs libbitshuffle.a $to_link
+ $DORIS_BIN_UTILS/ar rs libbitshuffle.a $to_link
mkdir -p $PREFIX/include/bitshuffle
cp libbitshuffle.a $PREFIX/lib/
cp $TP_SOURCE_DIR/$BITSHUFFLE_SOURCE/src/bitshuffle.h
$PREFIX/include/bitshuffle/bitshuffle.h
@@ -653,7 +662,7 @@ build_croaringbitmap() {
${CMAKE_CMD} -G "${GENERATOR}" -v -DROARING_BUILD_STATIC=ON
-DCMAKE_INSTALL_PREFIX=$TP_INSTALL_DIR \
-DCMAKE_INCLUDE_PATH="$TP_INSTALL_DIR/include" \
-DENABLE_ROARING_TESTS=OFF ..
- ${BUILD_SYSTEM} -j$PARALLEL && ${BUILD_SYSTEM} install
+ ${BUILD_SYSTEM} -j $PARALLEL && ${BUILD_SYSTEM} install
}
#orc
build_orc() {
@@ -673,7 +682,7 @@ build_orc() {
-DBUILD_CPP_TESTS=OFF \
-DCMAKE_INSTALL_PREFIX=$TP_INSTALL_DIR
- ${BUILD_SYSTEM} -j$PARALLEL && ${BUILD_SYSTEM} install
+ ${BUILD_SYSTEM} -j $PARALLEL && ${BUILD_SYSTEM} install
}
#cctz
@@ -681,7 +690,7 @@ build_cctz() {
check_if_source_exist $CCTZ_SOURCE
cd $TP_SOURCE_DIR/$CCTZ_SOURCE
export PREFIX=$TP_INSTALL_DIR
- make -j$PARALLEL && make install
+ make -j $PARALLEL && make install
}
# all js and csss related
@@ -716,7 +725,7 @@ build_aws_c_common() {
cd $TP_SOURCE_DIR/$AWS_C_COMMON_SOURCE
mkdir -p $BUILD_DIR && cd $BUILD_DIR
cmake -G "${GENERATOR}" .. -DCMAKE_INSTALL_PREFIX=$TP_INSTALL_DIR
-DCMAKE_PREFIX_PATH=$TP_INSTALL_DIR -DBUILD_SHARED_LIBS=OFF
- ${BUILD_SYSTEM} -j$PARALLEL && ${BUILD_SYSTEM} install
+ ${BUILD_SYSTEM} -j $PARALLEL && ${BUILD_SYSTEM} install
}
# aws-c-event-stream
@@ -726,7 +735,7 @@ build_aws_c_event_stream() {
mkdir -p $BUILD_DIR && cd $BUILD_DIR
cmake -G "${GENERATOR}" .. -DCMAKE_INSTALL_PREFIX=$TP_INSTALL_DIR
-DCMAKE_PREFIX_PATH=$TP_INSTALL_DIR -DBUILD_SHARED_LIBS=OFF \
-DBUILD_TESTING=OFF
- ${BUILD_SYSTEM} -j$PARALLEL && ${BUILD_SYSTEM} install
+ ${BUILD_SYSTEM} -j $PARALLEL && ${BUILD_SYSTEM} install
}
# aws-checksums
@@ -735,7 +744,7 @@ build_aws_checksums() {
cd $TP_SOURCE_DIR/$AWS_CHECKSUMS_SOURCE
mkdir -p $BUILD_DIR && cd $BUILD_DIR
cmake -G "${GENERATOR}" .. -DCMAKE_INSTALL_PREFIX=$TP_INSTALL_DIR
-DCMAKE_PREFIX_PATH=$TP_INSTALL_DIR -DBUILD_SHARED_LIBS=OFF
- ${BUILD_SYSTEM} -j$PARALLEL && ${BUILD_SYSTEM} install
+ ${BUILD_SYSTEM} -j $PARALLEL && ${BUILD_SYSTEM} install
}
# aws-c-io
@@ -744,7 +753,7 @@ build_aws_c_io() {
cd $TP_SOURCE_DIR/$AWS_C_IO_SOURCE
mkdir -p $BUILD_DIR && cd $BUILD_DIR
cmake -G "${GENERATOR}" .. -DCMAKE_INSTALL_PREFIX=$TP_INSTALL_DIR
-DCMAKE_PREFIX_PATH=$TP_INSTALL_DIR -DBUILD_SHARED_LIBS=OFF
- ${BUILD_SYSTEM} -j$PARALLEL && ${BUILD_SYSTEM} install
+ ${BUILD_SYSTEM} -j $PARALLEL && ${BUILD_SYSTEM} install
}
# aws-s2n
@@ -753,7 +762,7 @@ build_aws_s2n() {
cd $TP_SOURCE_DIR/$AWS_S2N_SOURCE
mkdir -p $BUILD_DIR && cd $BUILD_DIR
cmake -G "${GENERATOR}" .. -DCMAKE_INSTALL_PREFIX=$TP_INSTALL_DIR
-DCMAKE_PREFIX_PATH=$TP_INSTALL_DIR -DBUILD_SHARED_LIBS=OFF
- ${BUILD_SYSTEM} -j$PARALLEL && ${BUILD_SYSTEM} install
+ ${BUILD_SYSTEM} -j $PARALLEL && ${BUILD_SYSTEM} install
}
# aws-c-cal
@@ -762,7 +771,7 @@ build_aws_c_cal() {
cd $TP_SOURCE_DIR/$AWS_C_CAL_SOURCE
mkdir -p $BUILD_DIR && cd $BUILD_DIR
cmake -G "${GENERATOR}" .. -DCMAKE_INSTALL_PREFIX=$TP_INSTALL_DIR
-DCMAKE_PREFIX_PATH=$TP_INSTALL_DIR -DBUILD_SHARED_LIBS=OFF
- ${BUILD_SYSTEM} -j$PARALLEL && ${BUILD_SYSTEM} install
+ ${BUILD_SYSTEM} -j $PARALLEL && ${BUILD_SYSTEM} install
}
# aws_sdk
@@ -773,7 +782,7 @@ build_aws_sdk() {
$CMAKE_CMD -G "${GENERATOR}" .. -DCMAKE_BUILD_TYPE=Release
-DCMAKE_INSTALL_PREFIX=$TP_INSTALL_DIR \
-DBUILD_DEPS=OFF -DCMAKE_PREFIX_PATH=$TP_INSTALL_DIR
-DBUILD_SHARED_LIBS=OFF -DENABLE_TESTING=OFF \
-DCMAKE_MODULE_PATH=$TP_INSTALL_DIR/lib64/cmake -DBUILD_ONLY="s3"
- ${BUILD_SYSTEM} -j$PARALLEL && ${BUILD_SYSTEM} install
+ ${BUILD_SYSTEM} -j $PARALLEL && ${BUILD_SYSTEM} install
}
# See https://github.com/apache/incubator-doris/issues/2910
# LLVM related codes have already be removed in master, so there is
@@ -799,7 +808,6 @@ build_snappy
build_gperftools
build_curl
build_re2
-build_mysql
build_thrift
build_leveldb
build_brpc
@@ -813,6 +821,7 @@ build_croaringbitmap
build_orc
build_cctz
build_tsan_header
+build_mysql
build_aws_c_common
build_aws_s2n
build_aws_c_cal
diff --git a/thirdparty/download-thirdparty.sh
b/thirdparty/download-thirdparty.sh
index f279965..d34bb4d 100755
--- a/thirdparty/download-thirdparty.sh
+++ b/thirdparty/download-thirdparty.sh
@@ -251,6 +251,7 @@ echo "Finished patching $RE2_SOURCE"
cd $TP_SOURCE_DIR/$MYSQL_SOURCE
if [ ! -f $PATCHED_MARK ]; then
patch -p0 < $TP_PATCH_DIR/mysql-5.7.18.patch
+ patch -Rp0 < $TP_PATCH_DIR/mysql-5.7.18-boost.patch
touch $PATCHED_MARK
fi
cd -
@@ -303,15 +304,6 @@ fi
cd -
echo "Finished patching $LZ4_SOURCE"
-# brpc patch to disable shared library
-cd $TP_SOURCE_DIR/$BRPC_SOURCE
-if [ ! -f $PATCHED_MARK ] && [ $BRPC_SOURCE == "incubator-brpc-0.9.5" ]; then
- patch -p0 < $TP_PATCH_DIR/incubator-brpc-0.9.5.patch
- touch $PATCHED_MARK
-fi
-cd -
-echo "Finished patching $BRPC_SOURCE"
-
# s2 patch to disable shared library
cd $TP_SOURCE_DIR/$S2_SOURCE
if [ ! -f $PATCHED_MARK ]; then
diff --git a/thirdparty/patches/incubator-brpc-0.9.5.patch
b/thirdparty/patches/incubator-brpc-0.9.5.patch
deleted file mode 100644
index a717f5f..0000000
--- a/thirdparty/patches/incubator-brpc-0.9.5.patch
+++ /dev/null
@@ -1,237 +0,0 @@
---- CMakeLists.txt 2018-10-30 12:00:24.000000000 +0800
-+++ CMakeLists.txt 2020-01-19 15:30:38.260000000 +0800
-@@ -104,8 +104,11 @@
-
- if(CMAKE_CXX_COMPILER_ID STREQUAL "GNU")
- #required by butil/crc32.cc to boost performance for 10x
-- if(NOT (CMAKE_CXX_COMPILER_VERSION VERSION_LESS 4.4))
-+ if((CMAKE_SYSTEM_PROCESSOR MATCHES "(x86)|(X86)|(amd64)|(AMD64)") AND NOT
(CMAKE_CXX_COMPILER_VERSION VERSION_LESS 4.4))
- set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -msse4 -msse4.2")
-+ elseif((CMAKE_SYSTEM_PROCESSOR MATCHES "aarch64"))
-+ # segmentation fault in libcontext
-+ set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -fno-gcse -w")
- endif()
- if(NOT (CMAKE_CXX_COMPILER_VERSION VERSION_LESS 7.0))
- set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wno-aligned-new")
---- src/bthread/context.cpp 2018-10-30 12:00:24.000000000 +0800
-+++ src/bthread/context.cpp 2020-01-19 15:48:18.070000000 +0800
-@@ -600,3 +600,106 @@
- );
-
- #endif
-+
-+#if defined(BTHREAD_CONTEXT_PLATFORM_linux_arm64) &&
defined(BTHREAD_CONTEXT_COMPILER_gcc)
-+__asm (
-+".cpu generic+fp+simd\n"
-+".text\n"
-+".align 2\n"
-+".global bthread_jump_fcontext\n"
-+".type bthread_jump_fcontext, %function\n"
-+"bthread_jump_fcontext:\n"
-+" # prepare stack for GP + FPU\n"
-+" sub sp, sp, #0xb0\n"
-+"# Because gcc may save integer registers in fp registers across a\n"
-+"# function call we cannot skip saving the fp registers.\n"
-+"#\n"
-+"# Do not reinstate this test unless you fully understand what you\n"
-+"# are doing.\n"
-+"#\n"
-+"# # test if fpu env should be preserved\n"
-+"# cmp w3, #0\n"
-+"# b.eq 1f\n"
-+" # save d8 - d15\n"
-+" stp d8, d9, [sp, #0x00]\n"
-+" stp d10, d11, [sp, #0x10]\n"
-+" stp d12, d13, [sp, #0x20]\n"
-+" stp d14, d15, [sp, #0x30]\n"
-+"1:\n"
-+" # save x19-x30\n"
-+" stp x19, x20, [sp, #0x40]\n"
-+" stp x21, x22, [sp, #0x50]\n"
-+" stp x23, x24, [sp, #0x60]\n"
-+" stp x25, x26, [sp, #0x70]\n"
-+" stp x27, x28, [sp, #0x80]\n"
-+" stp x29, x30, [sp, #0x90]\n"
-+" # save LR as PC\n"
-+" str x30, [sp, #0xa0]\n"
-+" # store RSP (pointing to context-data) in first argument (x0).\n"
-+" # STR cannot have sp as a target register\n"
-+" mov x4, sp\n"
-+" str x4, [x0]\n"
-+" # restore RSP (pointing to context-data) from A2 (x1)\n"
-+" mov sp, x1\n"
-+"# # test if fpu env should be preserved\n"
-+"# cmp w3, #0\n"
-+"# b.eq 2f\n"
-+" # load d8 - d15\n"
-+" ldp d8, d9, [sp, #0x00]\n"
-+" ldp d10, d11, [sp, #0x10]\n"
-+" ldp d12, d13, [sp, #0x20]\n"
-+" ldp d14, d15, [sp, #0x30]\n"
-+"2:\n"
-+" # load x19-x30\n"
-+" ldp x19, x20, [sp, #0x40]\n"
-+" ldp x21, x22, [sp, #0x50]\n"
-+" ldp x23, x24, [sp, #0x60]\n"
-+" ldp x25, x26, [sp, #0x70]\n"
-+" ldp x27, x28, [sp, #0x80]\n"
-+" ldp x29, x30, [sp, #0x90]\n"
-+" # use third arg as return value after jump\n"
-+" # and as first arg in context function\n"
-+" mov x0, x2\n"
-+" # load pc\n"
-+" ldr x4, [sp, #0xa0]\n"
-+" # restore stack from GP + FPU\n"
-+" add sp, sp, #0xb0\n"
-+" ret x4\n"
-+".size bthread_jump_fcontext,.-bthread_jump_fcontext\n"
-+"# Mark that we don't need executable stack.\n"
-+".section .note.GNU-stack,\"\",%progbits\n"
-+);
-+
-+#endif
-+
-+#if defined(BTHREAD_CONTEXT_PLATFORM_linux_arm64) &&
defined(BTHREAD_CONTEXT_COMPILER_gcc)
-+__asm (
-+".cpu generic+fp+simd\n"
-+".text\n"
-+".align 2\n"
-+".global bthread_make_fcontext\n"
-+".type bthread_make_fcontext, %function\n"
-+"bthread_make_fcontext:\n"
-+" # shift address in x0 (allocated stack) to lower 16 byte boundary\n"
-+" and x0, x0, ~0xF\n"
-+" # reserve space for context-data on context-stack\n"
-+" sub x0, x0, #0xb0\n"
-+" # third arg of bthread_make_fcontext() == address of context-function\n"
-+" # store address as a PC to jump in\n"
-+" str x2, [x0, #0xa0]\n"
-+" # save address of finish as return-address for context-function\n"
-+" # will be entered after context-function returns (LR register)\n"
-+" adr x1, finish\n"
-+" str x1, [x0, #0x98]\n"
-+" ret x30 \n"
-+"finish:\n"
-+" # exit code is zero\n"
-+" mov x0, #0\n"
-+" # exit application\n"
-+" bl _exit\n"
-+".size bthread_make_fcontext,.-bthread_make_fcontext\n"
-+"# Mark that we don't need executable stack.\n"
-+".section .note.GNU-stack,\"\",%progbits\n"
-+);
-+
-+#endif
---- src/bthread/context.h 2018-10-30 12:00:24.000000000 +0800
-+++ src/bthread/context.h 2020-01-19 14:15:37.170000000 +0800
-@@ -30,6 +30,9 @@
- #elif __arm__
- #define BTHREAD_CONTEXT_PLATFORM_linux_arm32
- #define BTHREAD_CONTEXT_CALL_CONVENTION
-+ #elif __aarch64__
-+ #define BTHREAD_CONTEXT_PLATFORM_linux_arm64
-+ #define BTHREAD_CONTEXT_CALL_CONVENTION
- #endif
-
- #elif defined(__MINGW32__) || defined (__MINGW64__)
---- src/bthread/processor.h 2018-10-30 12:00:24.000000000 +0800
-+++ src/bthread/processor.h 2020-01-19 15:23:50.410000000 +0800
-@@ -20,9 +20,13 @@
- #define BTHREAD_PROCESSOR_H
-
- // Pause instruction to prevent excess processor bus usage, only works in GCC
--# ifndef cpu_relax
--# define cpu_relax() asm volatile("pause\n": : :"memory")
--# endif
-+#ifndef cpu_relax
-+#if defined(ARCH_CPU_ARM_FAMILY)
-+# define cpu_relax() asm volatile("yield\n": : :"memory")
-+#else
-+#define cpu_relax() asm volatile("pause\n": : :"memory")
-+#endif
-+#endif
-
- // Compile read-write barrier
- # ifndef barrier
---- src/butil/config.h 1970-01-01 08:00:00.000000000 +0800
-+++ src/butil/config.h 2020-01-19 12:39:01.070000000 +0800
-@@ -0,0 +1,6 @@
-+#ifndef BUTIL_CONFIG_H
-+#define BUTIL_CONFIG_H
-+
-+#define BRPC_WITH_GLOG 1
-+
-+#endif // BUTIL_CONFIG_H
---- src/butil/third_party/snappy/snappy-internal.h 2018-10-30
12:00:24.000000000 +0800
-+++ src/butil/third_party/snappy/snappy-internal.h 2020-01-19
14:59:50.610000000 +0800
-@@ -132,7 +132,7 @@
- matched += 4;
- }
- if (LittleEndian::IsLittleEndian() && s2 <= s2_limit - 4) {
-- uint32 x = UNALIGNED_LOAD32(s2) ^ UNALIGNED_LOAD32(s1 + matched);
-+ uint32_t x = UNALIGNED_LOAD32(s2) ^ UNALIGNED_LOAD32(s1 + matched);
- int matching_bits = Bits::FindLSBSetNonZero(x);
- matched += matching_bits >> 3;
- } else {
---- src/butil/third_party/snappy/snappy-stubs-internal.h 2018-10-30
12:00:24.000000000 +0800
-+++ src/butil/third_party/snappy/snappy-stubs-internal.h 2020-01-19
14:49:12.990000000 +0800
-@@ -35,6 +35,7 @@
- #include <assert.h>
- #include <stdlib.h>
- #include <string.h>
-+#include <stdint.h>
- #include "butil/compiler_specific.h"
- #include "butil/basictypes.h"
- #include "butil/sys_byteorder.h"
-@@ -114,8 +115,8 @@
- // See if that would be more efficient on platforms supporting it,
- // at least for copies.
-
--inline uint64_tUNALIGNED_LOAD64(const void *p) {
-- uint64_tt;
-+inline uint64_t UNALIGNED_LOAD64(const void *p) {
-+ uint64_t t;
- memcpy(&t, p, sizeof t);
- return t;
- }
-@@ -141,8 +142,8 @@
- return t;
- }
-
--inline uint64_tUNALIGNED_LOAD64(const void *p) {
-- uint64_tt;
-+inline uint64_t UNALIGNED_LOAD64(const void *p) {
-+ uint64_t t;
- memcpy(&t, p, sizeof t);
- return t;
- }
-@@ -155,7 +156,7 @@
- memcpy(p, &v, sizeof v);
- }
-
--inline void UNALIGNED_STORE64(void *p, uint64_tv) {
-+inline void UNALIGNED_STORE64(void *p, uint64_t v) {
- memcpy(p, &v, sizeof v);
- }
-
---- src/CMakeLists.txt 2018-10-30 12:00:24.000000000 +0800
-+++ src/CMakeLists.txt 2020-01-19 15:58:52.000000000 +0800
-@@ -47,11 +47,13 @@
- target_link_libraries(protoc-gen-mcpack brpc-shared)
-
- #install directory
--install(TARGETS brpc-shared
-- RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}
-- LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}
-- ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}
-- )
-+if(BUILD_SHARED_LIBS)
-+ install(TARGETS brpc-shared
-+ RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}
-+ LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}
-+ ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}
-+ )
-+endif()
-
- install(TARGETS brpc-static
- RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}
diff --git a/thirdparty/patches/mysql-5.7.18-boost.patch
b/thirdparty/patches/mysql-5.7.18-boost.patch
new file mode 100644
index 0000000..e3f7613
--- /dev/null
+++ b/thirdparty/patches/mysql-5.7.18-boost.patch
@@ -0,0 +1,20 @@
+--- cmake/boost.cmake
++++ cmake/boost.cmake
+@@ -31,7 +31,7 @@
+ # we assume that the correct version (see below)
+ # is installed on the compile host in the standard location.
+
+-SET(BOOST_PACKAGE_NAME "boost_1_73_0")
++SET(BOOST_PACKAGE_NAME "boost_1_59_0")
+ SET(BOOST_TARBALL "${BOOST_PACKAGE_NAME}.tar.gz")
+ SET(BOOST_DOWNLOAD_URL
+ "http://sourceforge.net/projects/boost/files/boost/1.59.0/${BOOST_TARBALL}"
+@@ -262,7 +262,7 @@ IF(NOT BOOST_MAJOR_VERSION EQUAL 10)
+ COULD_NOT_FIND_BOOST()
+ ENDIF()
+
+-IF(NOT BOOST_MINOR_VERSION EQUAL 73)
++IF(NOT BOOST_MINOR_VERSION EQUAL 59)
+ MESSAGE(WARNING "Boost minor version found is ${BOOST_MINOR_VERSION} "
+ "we need 59"
+ )
diff --git a/thirdparty/vars.sh b/thirdparty/vars.sh
index 6f8dc12..6a3b065 100644
--- a/thirdparty/vars.sh
+++ b/thirdparty/vars.sh
@@ -170,10 +170,10 @@ RE2_SOURCE=re2-2017-05-01
RE2_MD5SUM="4aa65a0b22edacb7ddcd7e4aec038dcf"
# boost
-BOOST_DOWNLOAD="https://dl.bintray.com/boostorg/release/1.64.0/source/boost_1_64_0.tar.gz"
-BOOST_NAME=boost_1_64_0.tar.gz
-BOOST_SOURCE=boost_1_64_0
-BOOST_MD5SUM="319c6ffbbeccc366f14bb68767a6db79"
+BOOST_DOWNLOAD="https://dl.bintray.com/boostorg/release/1.73.0/source/boost_1_73_0.tar.gz"
+BOOST_NAME=boost_1_73_0.tar.gz
+BOOST_SOURCE=boost_1_73_0
+BOOST_MD5SUM="4036cd27ef7548b8d29c30ea10956196"
# mysql
MYSQL_DOWNLOAD="https://github.com/mysql/mysql-server/archive/mysql-5.7.18.tar.gz"
@@ -181,12 +181,6 @@ MYSQL_NAME=mysql-5.7.18.tar.gz
MYSQL_SOURCE=mysql-server-mysql-5.7.18
MYSQL_MD5SUM="58598b10dce180e4d1fbdd7cf5fa68d6"
-# boost for mysql
-BOOST_FOR_MYSQL_DOWNLOAD="http://sourceforge.net/projects/boost/files/boost/1.59.0/boost_1_59_0.tar.gz"
-BOOST_FOR_MYSQL_NAME=boost_1_59_0.tar.gz
-BOOST_FOR_MYSQL_SOURCE=boost_1_59_0
-BOOST_FOR_MYSQL_MD5SUM="51528a0e3b33d9e10aaa311d9eb451e3"
-
# unix odbc
ODBC_DOWNLOAD="http://www.unixodbc.org/unixODBC-2.3.7.tar.gz"
ODBC_NAME=unixODBC-2.3.7.tar.gz
@@ -200,10 +194,10 @@ LEVELDB_SOURCE=leveldb-1.20
LEVELDB_MD5SUM="298b5bddf12c675d6345784261302252"
# brpc
-BRPC_DOWNLOAD="https://github.com/apache/incubator-brpc/archive/0.9.5.tar.gz"
-BRPC_NAME=incubator-brpc-0.9.5.tar.gz
-BRPC_SOURCE=incubator-brpc-0.9.5
-BRPC_MD5SUM="c9f46e4c97a9cd5f836ba2c6c56978dd"
+BRPC_DOWNLOAD="https://github.com/apache/incubator-brpc/archive/0.9.7.tar.gz"
+BRPC_NAME=incubator-brpc-0.9.7.tar.gz
+BRPC_SOURCE=incubator-brpc-0.9.7
+BRPC_MD5SUM="a5b79339d139d1c55d39689c0a69bcef"
# rocksdb
ROCKSDB_DOWNLOAD="https://github.com/facebook/rocksdb/archive/v5.14.2.tar.gz"
@@ -370,7 +364,6 @@ CURL
RE2
BOOST
MYSQL
-BOOST_FOR_MYSQL
ODBC
LEVELDB
BRPC
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]