Upgraded clickhouse-cpp to 2.1.0

Clickhouse build are using C++17
PRS_3888_3903
root 4 years ago committed by Miro Stauder
parent 3afcc12b84
commit e47cb3fb8f

2
.gitignore vendored

@ -121,7 +121,7 @@ deps/libhttpserver/libhttpserver-master_20191121/
deps/libhttpserver/libhttpserver-0.18.1/
#clickhouse
deps/clickhouse-cpp/clickhouse-cpp/
deps/clickhouse-cpp/clickhouse-cpp-*
deps/cityhash/cityhash/
deps/lz4/lz4-1.7.5/
deps/lz4/lz4/

10
deps/Makefile vendored

@ -140,17 +140,17 @@ lz4/lz4/liblz4.a:
cd lz4/lz4 && CC=${CC} CXX=${CXX} ${MAKE}
lz4: lz4/lz4/liblz4.a
clickhouse-cpp/clickhouse-cpp/clickhouse/libclickhouse-cpp-lib.a:
cd clickhouse-cpp && rm -rf clickhouse-cpp/ || true
cd clickhouse-cpp && tar -zxf clickhouse-cpp.tar.gz
clickhouse-cpp/clickhouse-cpp/clickhouse/libclickhouse-cpp-lib-static.a:
cd clickhouse-cpp && rm -rf clickhouse-cpp-* || true
cd clickhouse-cpp && tar -zxf v2.1.0.tar.gz
ifeq ($(CXX),clang++)
cd clickhouse-cpp/clickhouse-cpp && sed -i 's/"-O2 -pthread -Wall -Wextra -Werror"/"-O2 -pthread -Wall -Wextra -Werror -Wno-deprecated-copy"/' CMakeLists.txt
endif
cd clickhouse-cpp/clickhouse-cpp && cmake -DCMAKE_BUILD_TYPE=RelWithDebInfo .
cd clickhouse-cpp/clickhouse-cpp && patch clickhouse/columns/column.h < ../column.h.diff
# cd clickhouse-cpp/clickhouse-cpp && patch clickhouse/columns/column.h < ../column.h.diff
cd clickhouse-cpp/clickhouse-cpp && CC=${CC} CXX=${CXX} ${MAKE}
clickhouse-cpp: clickhouse-cpp/clickhouse-cpp/clickhouse/libclickhouse-cpp-lib.a
clickhouse-cpp: clickhouse-cpp/clickhouse-cpp/clickhouse/libclickhouse-cpp-lib-static.a
libdaemon/libdaemon/libdaemon/.libs/libdaemon.a:

@ -0,0 +1 @@
clickhouse-cpp-2.1.0

Binary file not shown.

@ -1,9 +0,0 @@
@@ -4,6 +4,8 @@
#include "../base/coded.h"
#include "../types/types.h"
+#include <stdexcept>
+
namespace clickhouse {
using ColumnRef = std::shared_ptr<class Column>;

Binary file not shown.

@ -7,10 +7,10 @@
#include <vector>
template<class...> struct conjunction : std::true_type { };
template<class B1> struct conjunction<B1> : B1 { };
template<class B1> struct std::conjunction<B1> : B1 { };
template<class B1, class... Bn>
struct conjunction<B1, Bn...>
: std::conditional<bool(B1::value), conjunction<Bn...>, B1>::type {};
struct std::conjunction<B1, Bn...>
: std::conditional<bool(B1::value), std::conjunction<Bn...>, B1>::type {};
/**
* @brief Stores the result of formatting the first parameter with the provided
@ -24,7 +24,7 @@ struct conjunction<B1, Bn...>
*/
template<
typename... Args,
typename std::enable_if<conjunction<std::is_trivial<Args>...>::value,int>::type = 0
typename std::enable_if<std::conjunction<std::is_trivial<Args>...>::value,int>::type = 0
>
int string_format(const std::string& str, std::string& result, Args... args) {
int err = 0;

@ -64,6 +64,7 @@
} while (rc==SQLITE_LOCKED || rc==SQLITE_BUSY);\
} while (0)
#include <optional>
#include "clickhouse/client.h"
using namespace clickhouse;
@ -177,9 +178,9 @@ inline void ClickHouse_to_MySQL(const Block& block) {
{
auto s_t = block[i]->As<ColumnNullable>();
if (s_t->IsNull(r)) {
s = "\\N";
s = "NULL";
} else {
clickhouse::Type::Code cnc = block[i]->Type()->GetNestedType()->GetCode();
clickhouse::Type::Code cnc = block[i]->Type()->GetCode();
switch (cnc) {
case clickhouse::Type::Code::Int8:
s=std::to_string(s_t->Nested()->As<ColumnInt8>()->At(r));

@ -54,7 +54,7 @@ PROMETHEUS_LDIR=$(PROMETHEUS_PATH)/lib
IDIR=../include
IDIRS=-I$(IDIR) -I$(JEMALLOC_IDIR) -I$(MARIADB_IDIR) $(LIBCONFIG_IDIR) -I$(RE2_IDIR) -I$(SQLITE3_DIR) -I$(PCRE_PATH) -I/usr/local/include -I$(CLICKHOUSE_CPP_DIR) $(MICROHTTPD_IDIR) $(LIBHTTPSERVER_IDIR) $(LIBINJECTION_IDIR) $(CURL_IDIR) -I$(EV_DIR) -I$(SSL_IDIR) -I$(PROMETHEUS_IDIR)
IDIRS=-I$(IDIR) -I$(JEMALLOC_IDIR) -I$(MARIADB_IDIR) $(LIBCONFIG_IDIR) -I$(RE2_IDIR) -I$(SQLITE3_DIR) -I$(PCRE_PATH) -I/usr/local/include -I$(CLICKHOUSE_CPP_DIR) -I$(CLICKHOUSE_CPP_DIR)/contrib/ $(MICROHTTPD_IDIR) $(LIBHTTPSERVER_IDIR) $(LIBINJECTION_IDIR) $(CURL_IDIR) -I$(EV_DIR) -I$(SSL_IDIR) -I$(PROMETHEUS_IDIR)
LDIRS=-L$(JEMALLOC_PATH)/lib -L$(RE2_PATH)/obj -L$(INJECTION_PATH) -L$(PROMETHEUS_LDIR)
@ -99,7 +99,7 @@ endif
PROXYSQLCLICKHOUSE := $(shell echo $(PROXYSQLCLICKHOUSE))
ifeq ($(PROXYSQLCLICKHOUSE),1)
PSQLCH=-DPROXYSQLCLICKHOUSE
PSQLCH=-DPROXYSQLCLICKHOUSE -std=c++17
else
PSQLCH=
endif

@ -3561,7 +3561,7 @@ void MySQL_HostGroups_Manager::group_replication_lag_action(
bool writer_is_also_reader = false;
// Get the reader_hostgroup for the supplied writter hostgroup
std::string t_reader_hostgroup_query {
const std::string t_reader_hostgroup_query {
"SELECT reader_hostgroup,writer_is_also_reader FROM mysql_group_replication_hostgroups WHERE writer_hostgroup=%d"
};
std::string reader_hostgroup_query {};

@ -76,7 +76,7 @@ EV_LDIR=$(EV_DIR)/.libs
IDIR=../include
LDIR=../lib
IDIRS=-I$(IDIR) -I$(JEMALLOC_IDIR) -I$(MARIADB_IDIR) $(LIBCONFIG_IDIR) -I$(DAEMONPATH_IDIR) -I$(SQLITE3_DIR) -I$(CLICKHOUSE_CPP_DIR) -I$(MICROHTTPD_IDIR) -I$(LIBHTTPSERVER_IDIR) -I$(LIBINJECTION_IDIR) -I$(CURL_IDIR) -I$(EV_IDIR) -I$(SSL_IDIR) -I$(RE2_IDIR) -I$(PROMETHEUS_IDIR)
IDIRS=-I$(IDIR) -I$(JEMALLOC_IDIR) -I$(MARIADB_IDIR) $(LIBCONFIG_IDIR) -I$(DAEMONPATH_IDIR) -I$(SQLITE3_DIR) -I$(CLICKHOUSE_CPP_DIR) -I$(CLICKHOUSE_CPP_DIR)/contrib/ -I$(MICROHTTPD_IDIR) -I$(LIBHTTPSERVER_IDIR) -I$(LIBINJECTION_IDIR) -I$(CURL_IDIR) -I$(EV_IDIR) -I$(SSL_IDIR) -I$(RE2_IDIR) -I$(PROMETHEUS_IDIR)
LDIRS=-L$(LDIR) -L$(JEMALLOC_LDIR) $(LIBCONFIG_LDIR) -L$(RE2_PATH)/obj -L$(MARIADB_LDIR) -L$(DAEMONPATH_LDIR) -L$(PCRE_LDIR) -L$(MICROHTTPD_LDIR) -L$(LIBHTTPSERVER_LDIR) -L$(LIBINJECTION_LDIR) -L$(CURL_LDIR) -L$(EV_LDIR) -L$(SSL_LDIR) -L$(PROMETHEUS_LDIR)
UNAME_S := $(shell uname -s)
@ -88,7 +88,7 @@ endif
PROXYSQLCLICKHOUSE := $(shell echo $(PROXYSQLCLICKHOUSE))
ifeq ($(PROXYSQLCLICKHOUSE),1)
PSQLCH=-DPROXYSQLCLICKHOUSE
PSQLCH=-DPROXYSQLCLICKHOUSE -std=c++17
else
PSQLCH=
endif
@ -170,7 +170,7 @@ $(ODIR)/%.o: %.cpp
$(EXECUTABLE): $(ODIR) $(OBJ) $(LIBPROXYSQLAR)
ifeq ($(PROXYSQLCLICKHOUSE),1)
$(CXX) -o $@ $(OBJ) $(LIBPROXYSQLAR) $(CLICKHOUSE_CPP_DIR)/clickhouse/libclickhouse-cpp-lib.a $(CITYHASH_DIR)/libcityhash.a $(LZ4_DIR)/liblz4.a $(MYCXXFLAGS) $(CXXFLAGS) $(LDIRS) $(LIBS) $(LDFLAGS) $(MYLIBS)
$(CXX) -o $@ $(OBJ) $(LIBPROXYSQLAR) $(CLICKHOUSE_CPP_DIR)/clickhouse/libclickhouse-cpp-lib-static.a $(CITYHASH_DIR)/libcityhash.a $(LZ4_DIR)/liblz4.a $(MYCXXFLAGS) $(CXXFLAGS) $(LDIRS) $(LIBS) $(LDFLAGS) $(MYLIBS)
else
$(CXX) -o $@ $(OBJ) $(LIBPROXYSQLAR) $(MYCXXFLAGS) $(CXXFLAGS) $(LDIRS) $(LIBS) $(LDFLAGS) $(MYLIBS)
endif

Loading…
Cancel
Save