Compare commits
10 Commits
9930bc7f54
...
4691cef6f5
Author | SHA1 | Date | |
---|---|---|---|
4691cef6f5 | |||
ae49f132d3 | |||
09e6cc72c2 | |||
bcefd5e339 | |||
94858c5c2d | |||
c7ef533a07 | |||
3429e6c634 | |||
de106cfb1e | |||
a511f608de | |||
eea37359b9 |
70
build2.sh
Executable file
70
build2.sh
Executable file
@ -0,0 +1,70 @@
|
|||||||
|
#!/bin/bash
|
||||||
|
|
||||||
|
cmake_flags=(
|
||||||
|
# CMAKE_BUILD_TYPE
|
||||||
|
# values: Release/Debug
|
||||||
|
-DCMAKE_BUILD_TYPE=Release
|
||||||
|
|
||||||
|
# CMAKE_VERBOSE_MAKEFILE
|
||||||
|
# ON: verbose build output, OFF: silent build output
|
||||||
|
-DCMAKE_VERBOSE_MAKEFILE=ON
|
||||||
|
|
||||||
|
-DOB_BUILD_RPM=OFF
|
||||||
|
|
||||||
|
# OB_USE_CLANG
|
||||||
|
# ON: use clang, OFF: use gcc
|
||||||
|
-DOB_USE_CLANG=ON
|
||||||
|
|
||||||
|
# OB_USE_LLVM_LIBTOOLS
|
||||||
|
# ON: use lld & llvm-objcopy, OFF: use ld & objcopy
|
||||||
|
-DOB_USE_LLVM_LIBTOOLS=ON
|
||||||
|
|
||||||
|
-DOB_COMPRESS_DEBUG_SECTIONS=OFF
|
||||||
|
-DOB_STATIC_LINK_LGPL_DEPS=OFF
|
||||||
|
|
||||||
|
-DOB_USE_CCACHE=OFF
|
||||||
|
-DOB_ENABLE_PCH=ON
|
||||||
|
-DOB_ENALBE_UNITY=ON
|
||||||
|
-DOB_MAX_UNITY_BATCH_SIZE=30
|
||||||
|
-DOB_USE_ASAN=OFF
|
||||||
|
|
||||||
|
-DOB_RELEASEID=1
|
||||||
|
)
|
||||||
|
|
||||||
|
# check the depends library
|
||||||
|
for i in openssl RapidJSON libisal; do
|
||||||
|
pkg-config --exists $i
|
||||||
|
if [ $? -ne 0 ];then
|
||||||
|
echo "Please install $i"
|
||||||
|
exit
|
||||||
|
fi
|
||||||
|
done
|
||||||
|
|
||||||
|
# use split build directory for gcc/clang (release/debug)
|
||||||
|
BUILD_DIR=build
|
||||||
|
eval "export `echo "${cmake_flags[@]}" | sed 's/\-D//g'`"
|
||||||
|
if [ $OB_USE_CLANG == "ON" ]; then
|
||||||
|
BUILD_DIR="${BUILD_DIR}.clang"
|
||||||
|
elif [ $OB_USE_CLANG == "OFF" ]; then
|
||||||
|
BUILD_DIR="${BUILD_DIR}.gcc"
|
||||||
|
fi
|
||||||
|
|
||||||
|
if [ $OB_USE_LLVM_LIBTOOLS == "ON" ]; then
|
||||||
|
BUILD_DIR="${BUILD_DIR}.lld"
|
||||||
|
elif [ $OB_USE_LLVM_LIBTOOLS == "OFF" ]; then
|
||||||
|
BUILD_DIR="${BUILD_DIR}.ld"
|
||||||
|
fi
|
||||||
|
|
||||||
|
if [ $CMAKE_BUILD_TYPE == "Release" ];then
|
||||||
|
BUILD_DIR="${BUILD_DIR}.release"
|
||||||
|
elif [ $CMAKE_BUILD_TYPE == "Debug" ];then
|
||||||
|
BUILD_DIR="${BUILD_DIR}.debug"
|
||||||
|
fi
|
||||||
|
eval "unset `echo "${cmake_flags[@]}" | sed 's/\-D//g' | sed 's/=[0-9a-zA-Z]*/ /g'`"
|
||||||
|
|
||||||
|
[ -d $BUILD_DIR ] || mkdir -p $BUILD_DIR
|
||||||
|
cd $BUILD_DIR
|
||||||
|
|
||||||
|
cmake "${cmake_flags[@]}" ..
|
||||||
|
|
||||||
|
make -j`nproc` 2>&1 | tee build.log
|
@ -5,11 +5,13 @@ message(STATUS "DETECT BUILD ARCH: " ${ARCHITECTURE})
|
|||||||
ob_define(DEVTOOLS_DIR "${CMAKE_SOURCE_DIR}/deps/3rd/usr/local/oceanbase/devtools")
|
ob_define(DEVTOOLS_DIR "${CMAKE_SOURCE_DIR}/deps/3rd/usr/local/oceanbase/devtools")
|
||||||
ob_define(DEP_DIR "${CMAKE_SOURCE_DIR}/deps/3rd/usr/local/oceanbase/deps/devel")
|
ob_define(DEP_DIR "${CMAKE_SOURCE_DIR}/deps/3rd/usr/local/oceanbase/deps/devel")
|
||||||
|
|
||||||
|
ob_define(OB_RELEASEID 1)
|
||||||
|
ob_define(OB_SO_CACHE OFF)
|
||||||
|
|
||||||
ob_define(OB_USE_CLANG ON)
|
ob_define(OB_USE_CLANG ON)
|
||||||
ob_define(OB_USE_LLVM_LIBTOOLS ON)
|
ob_define(OB_USE_LLVM_LIBTOOLS ON)
|
||||||
ob_define(OB_COMPRESS_DEBUG_SECTIONS OFF)
|
ob_define(OB_COMPRESS_DEBUG_SECTIONS OFF)
|
||||||
ob_define(OB_STATIC_LINK_LGPL_DEPS ON)
|
ob_define(OB_STATIC_LINK_LGPL_DEPS OFF)
|
||||||
|
|
||||||
ob_define(OB_USE_CCACHE OFF)
|
ob_define(OB_USE_CCACHE OFF)
|
||||||
ob_define(OB_ENABLE_PCH ON)
|
ob_define(OB_ENABLE_PCH ON)
|
||||||
ob_define(OB_ENABLE_LIB_PCH ${OB_ENABLE_PCH})
|
ob_define(OB_ENABLE_LIB_PCH ${OB_ENABLE_PCH})
|
||||||
@ -18,10 +20,9 @@ ob_define(OB_ENABLE_UNITY ON)
|
|||||||
ob_define(OB_MAX_UNITY_BATCH_SIZE 30)
|
ob_define(OB_MAX_UNITY_BATCH_SIZE 30)
|
||||||
ob_define(OB_USE_ASAN OFF)
|
ob_define(OB_USE_ASAN OFF)
|
||||||
|
|
||||||
ob_define(OB_RELEASEID 1)
|
|
||||||
|
|
||||||
find_program(OBJCOPY_BIN objcopy PATHS "${DEVTOOLS_DIR}/bin" "/usr/bin")
|
set(OBJCOPY_BIN "${DEVTOOLS_DIR}/bin/llvm-objcopy")
|
||||||
find_program(LD_BIN ld PATHS "${DEVTOOLS_DIR}/bin" "/usr/bin")
|
set(LD_BIN "${DEVTOOLS_DIR}/bin/ld.lld")
|
||||||
|
|
||||||
# share compile cache between different directories
|
# share compile cache between different directories
|
||||||
set(DEBUG_PREFIX "-fdebug-prefix-map=${CMAKE_SOURCE_DIR}=.")
|
set(DEBUG_PREFIX "-fdebug-prefix-map=${CMAKE_SOURCE_DIR}=.")
|
||||||
@ -39,12 +40,30 @@ if(${ARCHITECTURE} STREQUAL "sw_64")
|
|||||||
set(BUILD_OPT "${BUILD_OPT} --sysroot=${DEVTOOLS_DIR}/swgcc830_native_tools/")
|
set(BUILD_OPT "${BUILD_OPT} --sysroot=${DEVTOOLS_DIR}/swgcc830_native_tools/")
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
|
if (OB_USE_LLVM_LIBTOOLS)
|
||||||
|
# create ld symlink to ld.lld for gcc
|
||||||
|
if(EXISTS "${DEVTOOLS_DIR}/bin/ld.lld")
|
||||||
|
execute_process(COMMAND cmake -E create_symlink
|
||||||
|
"${DEVTOOLS_DIR}/bin/ld.lld" # Old name
|
||||||
|
"${CMAKE_SOURCE_DIR}/deps/3rd/compile/ld" # New name
|
||||||
|
)
|
||||||
|
elseif(EXISTS "/usr/bin/ld.lld")
|
||||||
|
execute_process(COMMAND cmake -E create_symlink
|
||||||
|
"/usr/bin/ld.lld" # Old name
|
||||||
|
"${CMAKE_SOURCE_DIR}/deps/3rd/compile/ld" # New name
|
||||||
|
)
|
||||||
|
endif()
|
||||||
|
endif()
|
||||||
|
|
||||||
if(OB_USE_LLVM_LIBTOOLS)
|
if(OB_USE_LLVM_LIBTOOLS)
|
||||||
# use llvm-ar llvm-ranlib llvm-objcopy ld.lld...
|
# use llvm-ar llvm-ranlib llvm-objcopy ld.lld...
|
||||||
set(_CMAKE_TOOLCHAIN_PREFIX llvm-)
|
set(_CMAKE_TOOLCHAIN_PREFIX llvm-)
|
||||||
set(_CMAKE_TOOLCHAIN_LOCATION "${DEVTOOLS_DIR}/bin")
|
set(_CMAKE_TOOLCHAIN_LOCATION "${DEVTOOLS_DIR}/bin")
|
||||||
find_program(LD_BIN ld.lld PATHS "${DEVTOOLS_DIR}/bin" "/usr/bin")
|
find_program(LD_BIN ld.lld PATHS "${DEVTOOLS_DIR}/bin")
|
||||||
find_program(OBJCOPY_BIN llvm-objcopy PATHS "${DEVTOOLS_DIR}/bin" "/usr/bin")
|
find_program(OBJCOPY_BIN llvm-objcopy PATHS "${DEVTOOLS_DIR}/bin")
|
||||||
|
else()
|
||||||
|
find_program(LD_BIN ld PATHS "${CMAKE_SOURCE_DIR}/deps/3rd/compile" "${DEVTOOLS_DIR}/bin" "/usr/bin")
|
||||||
|
find_program(OBJCOPY_BIN objcopy PATHS "${DEVTOOLS_DIR}/bin" "/usr/bin")
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
if (OB_USE_CCACHE)
|
if (OB_USE_CCACHE)
|
||||||
@ -70,9 +89,9 @@ if (OB_USE_CLANG)
|
|||||||
find_program(OB_CXX clang++
|
find_program(OB_CXX clang++
|
||||||
PATHS "${DEVTOOLS_DIR}/bin" "/usr/bin"
|
PATHS "${DEVTOOLS_DIR}/bin" "/usr/bin"
|
||||||
NO_DEFAULT_PATH)
|
NO_DEFAULT_PATH)
|
||||||
set(BUILD_OPT "${BUILD_OPT} -fcolor-diagnostics")
|
set(BUILD_OPT "${BUILD_OPT} --gcc-toolchain=${DEVTOOLS_DIR} -fcolor-diagnostics -ffunction-sections -fdata-sections")
|
||||||
# just make embedded clang and ccache happy...
|
# just make embedded clang and ccache happy...
|
||||||
set(LD_OPT "${LD_OPT} -Wl,-z,noexecstack")
|
set(LD_OPT "${LD_OPT} -Wl,-z,noexecstack -Wl,--gc-sections ")
|
||||||
|
|
||||||
if (OB_USE_ASAN)
|
if (OB_USE_ASAN)
|
||||||
ob_define(CMAKE_ASAN_FLAG "-fstack-protector-strong -fsanitize=address -fno-optimize-sibling-calls")
|
ob_define(CMAKE_ASAN_FLAG "-fstack-protector-strong -fsanitize=address -fno-optimize-sibling-calls")
|
||||||
@ -137,8 +156,8 @@ elseif(${ARCHITECTURE} STREQUAL "aarch64")
|
|||||||
set(ARCH_LDFLAGS "-l:libatomic.a")
|
set(ARCH_LDFLAGS "-l:libatomic.a")
|
||||||
elseif(${ARCHITECTURE} STREQUAL "loongarch64")
|
elseif(${ARCHITECTURE} STREQUAL "loongarch64")
|
||||||
set(MARCH_CFLAGS "-march=la464" "-mcmodel=large")
|
set(MARCH_CFLAGS "-march=la464" "-mcmodel=large")
|
||||||
set(MTUNE_CFLAGS "-mabi=lp64d")
|
set(MTUNE_CFLAGS "-mabi=lp64")
|
||||||
set(ARCH_LDFLAGS "-latomic")
|
set(ARCH_LDFLAGS "-l:libatomic.a")
|
||||||
elseif(${ARCHITECTURE} STREQUAL "sw_64")
|
elseif(${ARCHITECTURE} STREQUAL "sw_64")
|
||||||
set(ARCH_LDFLAGS "-latomic -llzma")
|
set(ARCH_LDFLAGS "-latomic -llzma")
|
||||||
else()
|
else()
|
||||||
|
122
cmake/RPM.cmake
122
cmake/RPM.cmake
@ -59,67 +59,67 @@ install(FILES
|
|||||||
DESTINATION etc
|
DESTINATION etc
|
||||||
COMPONENT server)
|
COMPONENT server)
|
||||||
|
|
||||||
## oceanbase-devel
|
### oceanbase-devel
|
||||||
# libobcdc.so and libob_sql_proxy_parser_static.a
|
## libobcdc.so and libob_sql_proxy_parser_static.a
|
||||||
set(OCEANBASE_DEVEL_LIB_FILES "")
|
#set(OCEANBASE_DEVEL_LIB_FILES "")
|
||||||
set(OCEANBASE_DEVEL_INCLUDE_FILES deps/oblib/src/lib/ob_errno.h)
|
#set(OCEANBASE_DEVEL_INCLUDE_FILES deps/oblib/src/lib/ob_errno.h)
|
||||||
set(OCEANBASE_DEVEL_BIN_FILES "")
|
#set(OCEANBASE_DEVEL_BIN_FILES "")
|
||||||
|
#
|
||||||
message(STATUS "OB_BUILD_LIBOB_SQL_PROXY_PARSER ${OB_BUILD_LIBOB_SQL_PROXY_PARSER}")
|
#message(STATUS "OB_BUILD_LIBOB_SQL_PROXY_PARSER ${OB_BUILD_LIBOB_SQL_PROXY_PARSER}")
|
||||||
if (OB_BUILD_LIBOB_SQL_PROXY_PARSER)
|
#if (OB_BUILD_LIBOB_SQL_PROXY_PARSER)
|
||||||
# lib
|
# # lib
|
||||||
list(APPEND OCEANBASE_DEVEL_LIB_FILES ${CMAKE_BINARY_DIR}/src/sql/parser/libob_sql_proxy_parser_static.a)
|
# list(APPEND OCEANBASE_DEVEL_LIB_FILES ${CMAKE_BINARY_DIR}/src/sql/parser/libob_sql_proxy_parser_static.a)
|
||||||
|
#
|
||||||
# headers
|
# # headers
|
||||||
list(APPEND OCEANBASE_DEVEL_INCLUDE_FILES deps/oblib/src/common/sql_mode/ob_sql_mode.h)
|
# list(APPEND OCEANBASE_DEVEL_INCLUDE_FILES deps/oblib/src/common/sql_mode/ob_sql_mode.h)
|
||||||
list(APPEND OCEANBASE_DEVEL_INCLUDE_FILES src/sql/parser/ob_item_type.h)
|
# list(APPEND OCEANBASE_DEVEL_INCLUDE_FILES src/sql/parser/ob_item_type.h)
|
||||||
list(APPEND OCEANBASE_DEVEL_INCLUDE_FILES src/sql/parser/ob_sql_parser.h)
|
# list(APPEND OCEANBASE_DEVEL_INCLUDE_FILES src/sql/parser/ob_sql_parser.h)
|
||||||
list(APPEND OCEANBASE_DEVEL_INCLUDE_FILES src/sql/parser/parse_malloc.h)
|
# list(APPEND OCEANBASE_DEVEL_INCLUDE_FILES src/sql/parser/parse_malloc.h)
|
||||||
list(APPEND OCEANBASE_DEVEL_INCLUDE_FILES src/sql/parser/parser_proxy_func.h)
|
# list(APPEND OCEANBASE_DEVEL_INCLUDE_FILES src/sql/parser/parser_proxy_func.h)
|
||||||
list(APPEND OCEANBASE_DEVEL_INCLUDE_FILES src/sql/parser/parse_node.h)
|
# list(APPEND OCEANBASE_DEVEL_INCLUDE_FILES src/sql/parser/parse_node.h)
|
||||||
endif()
|
#endif()
|
||||||
|
#
|
||||||
if (OB_BUILD_LIBOBLOG)
|
#if (OB_BUILD_LIBOBLOG)
|
||||||
# lib
|
# # lib
|
||||||
# list(APPEND OCEANBASE_DEVEL_LIB_FILES ${CMAKE_BINARY_DIR}/tools/libobcdc/src/libobcdc.a)
|
# # list(APPEND OCEANBASE_DEVEL_LIB_FILES ${CMAKE_BINARY_DIR}/tools/libobcdc/src/libobcdc.a)
|
||||||
list(APPEND OCEANBASE_DEVEL_LIB_FILES ${CMAKE_BINARY_DIR}/tools/obcdc/src/libobcdc.so)
|
# list(APPEND OCEANBASE_DEVEL_LIB_FILES ${CMAKE_BINARY_DIR}/tools/obcdc/src/libobcdc.so)
|
||||||
list(APPEND OCEANBASE_DEVEL_LIB_FILES ${CMAKE_BINARY_DIR}/tools/obcdc/src/libobcdc.so.1)
|
# list(APPEND OCEANBASE_DEVEL_LIB_FILES ${CMAKE_BINARY_DIR}/tools/obcdc/src/libobcdc.so.1)
|
||||||
list(APPEND OCEANBASE_DEVEL_LIB_FILES ${CMAKE_BINARY_DIR}/tools/obcdc/src/libobcdc.so.1.0.0)
|
# list(APPEND OCEANBASE_DEVEL_LIB_FILES ${CMAKE_BINARY_DIR}/tools/obcdc/src/libobcdc.so.1.0.0)
|
||||||
|
#
|
||||||
# include lilboblog header
|
# # include lilboblog header
|
||||||
list(APPEND OCEANBASE_DEVEL_INCLUDE_FILES tools/obcdc/src/libobcdc.h)
|
# list(APPEND OCEANBASE_DEVEL_INCLUDE_FILES tools/obcdc/src/libobcdc.h)
|
||||||
|
#
|
||||||
# bin
|
# # bin
|
||||||
list(APPEND OCEANBASE_DEVEL_BIN_FILES ${CMAKE_BINARY_DIR}/tools/obcdc/tests/obcdc_tailf)
|
# list(APPEND OCEANBASE_DEVEL_BIN_FILES ${CMAKE_BINARY_DIR}/tools/obcdc/tests/obcdc_tailf)
|
||||||
endif()
|
#endif()
|
||||||
|
#
|
||||||
set(CPACK_RPM_DEVEL_DEFAULT_USER "root")
|
#set(CPACK_RPM_DEVEL_DEFAULT_USER "root")
|
||||||
set(CPACK_RPM_DEVEL_DEFAULT_GROUP "root")
|
#set(CPACK_RPM_DEVEL_DEFAULT_GROUP "root")
|
||||||
|
#
|
||||||
install(PROGRAMS
|
#install(PROGRAMS
|
||||||
${OCEANBASE_DEVEL_LIB_FILES}
|
# ${OCEANBASE_DEVEL_LIB_FILES}
|
||||||
DESTINATION /usr/lib
|
# DESTINATION /usr/lib
|
||||||
COMPONENT devel
|
# COMPONENT devel
|
||||||
)
|
#)
|
||||||
|
#
|
||||||
install(FILES
|
#install(FILES
|
||||||
${OCEANBASE_DEVEL_INCLUDE_FILES}
|
# ${OCEANBASE_DEVEL_INCLUDE_FILES}
|
||||||
DESTINATION /usr/include
|
# DESTINATION /usr/include
|
||||||
COMPONENT devel
|
# COMPONENT devel
|
||||||
)
|
#)
|
||||||
|
#
|
||||||
install(PROGRAMS
|
#install(PROGRAMS
|
||||||
${OCEANBASE_DEVEL_BIN_FILES}
|
# ${OCEANBASE_DEVEL_BIN_FILES}
|
||||||
DESTINATION /usr/bin
|
# DESTINATION /usr/bin
|
||||||
COMPONENT devel
|
# COMPONENT devel
|
||||||
)
|
#)
|
||||||
|
#
|
||||||
if (OB_BUILD_LIBOBLOG)
|
#if (OB_BUILD_LIBOBLOG)
|
||||||
install(DIRECTORY
|
# install(DIRECTORY
|
||||||
"deps/logmessage/include/"
|
# "deps/logmessage/include/"
|
||||||
DESTINATION /usr/include/oblogmsg
|
# DESTINATION /usr/include/oblogmsg
|
||||||
COMPONENT devel)
|
# COMPONENT devel)
|
||||||
endif()
|
#endif()
|
||||||
|
|
||||||
## oceanbase-libs
|
## oceanbase-libs
|
||||||
install(PROGRAMS
|
install(PROGRAMS
|
||||||
|
10
deps/easy/CMakeLists.txt
vendored
10
deps/easy/CMakeLists.txt
vendored
@ -20,14 +20,6 @@ set_property(GLOBAL PROPERTY EASY_INCLUDE_DIRS
|
|||||||
${INNER_INCLUDE_DIRS}
|
${INNER_INCLUDE_DIRS}
|
||||||
)
|
)
|
||||||
|
|
||||||
find_package(PkgConfig REQUIRED)
|
|
||||||
pkg_check_modules(OPENSSL REQUIRED IMPORTED_TARGET openssl)
|
|
||||||
if(${OPENSSL_FOUND})
|
|
||||||
include_directories(${OPENSSL_INCLUDE_DIRS})
|
|
||||||
else()
|
|
||||||
message("oceanbase need openssl")
|
|
||||||
endif()
|
|
||||||
|
|
||||||
target_include_directories(
|
target_include_directories(
|
||||||
easy_base INTERFACE
|
easy_base INTERFACE
|
||||||
${INNER_INCLUDE_DIRS}
|
${INNER_INCLUDE_DIRS}
|
||||||
@ -57,8 +49,6 @@ target_compile_options(easy_base
|
|||||||
target_link_libraries(easy_base
|
target_link_libraries(easy_base
|
||||||
INTERFACE
|
INTERFACE
|
||||||
-L${DEP_DIR}/lib
|
-L${DEP_DIR}/lib
|
||||||
-L${OPENSSL_LIBDIR}
|
|
||||||
${OPENSSL_LIBRARIES}
|
|
||||||
-lpthread -lm -l:libssl.a -l:libcrypto.a
|
-lpthread -lm -l:libssl.a -l:libcrypto.a
|
||||||
${ARCH_LDFLAGS}
|
${ARCH_LDFLAGS}
|
||||||
)
|
)
|
||||||
|
2
deps/logmessage
vendored
2
deps/logmessage
vendored
Submodule deps/logmessage updated: 509d86f9ea...163dfc97a6
1
deps/oblib/src/CMakeLists.txt
vendored
1
deps/oblib/src/CMakeLists.txt
vendored
@ -3,6 +3,7 @@ add_library(oblib_base_base INTERFACE)
|
|||||||
message(STATUS "check deps for oblib")
|
message(STATUS "check deps for oblib")
|
||||||
|
|
||||||
get_property(EASY_INCLUDE_DIRS GLOBAL PROPERTY "EASY_INCLUDE_DIRS" )
|
get_property(EASY_INCLUDE_DIRS GLOBAL PROPERTY "EASY_INCLUDE_DIRS" )
|
||||||
|
|
||||||
target_include_directories(
|
target_include_directories(
|
||||||
oblib_base_base INTERFACE
|
oblib_base_base INTERFACE
|
||||||
${CMAKE_CURRENT_SOURCE_DIR}
|
${CMAKE_CURRENT_SOURCE_DIR}
|
||||||
|
1
deps/oblib/src/lib/charset/ob_charset.cpp
vendored
1
deps/oblib/src/lib/charset/ob_charset.cpp
vendored
@ -11,6 +11,7 @@
|
|||||||
*/
|
*/
|
||||||
|
|
||||||
#define USING_LOG_PREFIX LIB_CHARSET
|
#define USING_LOG_PREFIX LIB_CHARSET
|
||||||
|
#include <math.h>
|
||||||
#include "lib/charset/ob_charset.h"
|
#include "lib/charset/ob_charset.h"
|
||||||
#include "lib/utility/serialization.h"
|
#include "lib/utility/serialization.h"
|
||||||
#include "lib/ob_define.h"
|
#include "lib/ob_define.h"
|
||||||
|
1
deps/oblib/src/lib/json_type/ob_json_bin.h
vendored
1
deps/oblib/src/lib/json_type/ob_json_bin.h
vendored
@ -460,6 +460,7 @@ private:
|
|||||||
uint64_t new_val_entry_offset, uint64_t count, uint8_t var_type, int64_t st_pos,
|
uint64_t new_val_entry_offset, uint64_t count, uint8_t var_type, int64_t st_pos,
|
||||||
ObJsonBuffer &result, ObJBVerType cur_vertype, ObJBVerType dest_vertype) const;
|
ObJsonBuffer &result, ObJBVerType cur_vertype, ObJBVerType dest_vertype) const;
|
||||||
|
|
||||||
|
//#define JB_PATH_NODE_LEN sizeof(struct ObJBNodeMeta)
|
||||||
|
|
||||||
void stack_update(ObJsonBuffer& stack, uint32_t idx, const ObJBNodeMeta& new_value);
|
void stack_update(ObJsonBuffer& stack, uint32_t idx, const ObJBNodeMeta& new_value);
|
||||||
int stack_copy(ObJsonBuffer& src, ObJsonBuffer& dst);
|
int stack_copy(ObJsonBuffer& src, ObJsonBuffer& dst);
|
||||||
|
@ -13,7 +13,7 @@
|
|||||||
#ifndef __COMMON_OB_MYSQL_CONNECTION__
|
#ifndef __COMMON_OB_MYSQL_CONNECTION__
|
||||||
#define __COMMON_OB_MYSQL_CONNECTION__
|
#define __COMMON_OB_MYSQL_CONNECTION__
|
||||||
|
|
||||||
#include <mariadb/mysql.h>
|
#include <mysql/mysql.h>
|
||||||
#include "lib/mysqlclient/ob_isql_connection.h"
|
#include "lib/mysqlclient/ob_isql_connection.h"
|
||||||
#include "lib/mysqlclient/ob_mysql_statement.h"
|
#include "lib/mysqlclient/ob_mysql_statement.h"
|
||||||
#include "lib/container/ob_se_array.h"
|
#include "lib/container/ob_se_array.h"
|
||||||
|
@ -13,7 +13,7 @@
|
|||||||
#ifndef __COMMON_OB_MYSQL_CONNECTION_POOL__
|
#ifndef __COMMON_OB_MYSQL_CONNECTION_POOL__
|
||||||
#define __COMMON_OB_MYSQL_CONNECTION_POOL__
|
#define __COMMON_OB_MYSQL_CONNECTION_POOL__
|
||||||
|
|
||||||
#include <mariadb/mysql.h>
|
#include <mysql/mysql.h>
|
||||||
#include "lib/container/ob_se_array.h"
|
#include "lib/container/ob_se_array.h"
|
||||||
#include "lib/task/ob_timer.h"
|
#include "lib/task/ob_timer.h"
|
||||||
#include "lib/list/ob_list.h"
|
#include "lib/list/ob_list.h"
|
||||||
|
@ -11,7 +11,7 @@
|
|||||||
*/
|
*/
|
||||||
|
|
||||||
#define USING_LOG_PREFIX LIB_MYSQLC
|
#define USING_LOG_PREFIX LIB_MYSQLC
|
||||||
#include <mariadb/mysql.h>
|
#include <mysql/mysql.h>
|
||||||
#include "lib/ob_define.h"
|
#include "lib/ob_define.h"
|
||||||
#include "lib/allocator/ob_malloc.h"
|
#include "lib/allocator/ob_malloc.h"
|
||||||
#include "lib/mysqlclient/ob_mysql_prepared_statement.h"
|
#include "lib/mysqlclient/ob_mysql_prepared_statement.h"
|
||||||
|
@ -13,7 +13,7 @@
|
|||||||
#ifndef __OB_COMMON_SQLCLIENT_MYSQL_PREPARED_PARAM__
|
#ifndef __OB_COMMON_SQLCLIENT_MYSQL_PREPARED_PARAM__
|
||||||
#define __OB_COMMON_SQLCLIENT_MYSQL_PREPARED_PARAM__
|
#define __OB_COMMON_SQLCLIENT_MYSQL_PREPARED_PARAM__
|
||||||
|
|
||||||
#include <mariadb/mysql.h>
|
#include <mysql/mysql.h>
|
||||||
#include "lib/string/ob_string.h"
|
#include "lib/string/ob_string.h"
|
||||||
#include "lib/mysqlclient/ob_mysql_connection.h"
|
#include "lib/mysqlclient/ob_mysql_connection.h"
|
||||||
#include "lib/mysqlclient/ob_mysql_result.h"
|
#include "lib/mysqlclient/ob_mysql_result.h"
|
||||||
|
@ -11,7 +11,7 @@
|
|||||||
*/
|
*/
|
||||||
|
|
||||||
#define USING_LOG_PREFIX LIB_MYSQLC
|
#define USING_LOG_PREFIX LIB_MYSQLC
|
||||||
#include <mariadb/mysql.h>
|
#include <mysql/mysql.h>
|
||||||
#include "lib/ob_define.h"
|
#include "lib/ob_define.h"
|
||||||
#include "lib/allocator/ob_malloc.h"
|
#include "lib/allocator/ob_malloc.h"
|
||||||
#include "lib/mysqlclient/ob_mysql_prepared_result.h"
|
#include "lib/mysqlclient/ob_mysql_prepared_result.h"
|
||||||
|
@ -13,7 +13,7 @@
|
|||||||
#ifndef __OB_COMMON_SQLCLIENT_OB_MYSQL_PREPARED_RESULT__
|
#ifndef __OB_COMMON_SQLCLIENT_OB_MYSQL_PREPARED_RESULT__
|
||||||
#define __OB_COMMON_SQLCLIENT_OB_MYSQL_PREPARED_RESULT__
|
#define __OB_COMMON_SQLCLIENT_OB_MYSQL_PREPARED_RESULT__
|
||||||
|
|
||||||
#include <mariadb/mysql.h>
|
#include <mysql/mysql.h>
|
||||||
#include "lib/string/ob_string.h"
|
#include "lib/string/ob_string.h"
|
||||||
#include "lib/mysqlclient/ob_mysql_connection.h"
|
#include "lib/mysqlclient/ob_mysql_connection.h"
|
||||||
#include "lib/mysqlclient/ob_mysql_result.h"
|
#include "lib/mysqlclient/ob_mysql_result.h"
|
||||||
|
@ -11,7 +11,7 @@
|
|||||||
*/
|
*/
|
||||||
|
|
||||||
#define USING_LOG_PREFIX LIB_MYSQLC
|
#define USING_LOG_PREFIX LIB_MYSQLC
|
||||||
#include <mariadb/mysql.h>
|
#include <mysql/mysql.h>
|
||||||
#include "lib/string/ob_string.h"
|
#include "lib/string/ob_string.h"
|
||||||
#include "lib/mysqlclient/ob_mysql_connection.h"
|
#include "lib/mysqlclient/ob_mysql_connection.h"
|
||||||
#include "lib/mysqlclient/ob_mysql_prepared_param.h"
|
#include "lib/mysqlclient/ob_mysql_prepared_param.h"
|
||||||
|
@ -13,7 +13,7 @@
|
|||||||
#ifndef __OB_COMMON_SQLCLIENT_OB_MYSQL_PREPARED_STATEMENT__
|
#ifndef __OB_COMMON_SQLCLIENT_OB_MYSQL_PREPARED_STATEMENT__
|
||||||
#define __OB_COMMON_SQLCLIENT_OB_MYSQL_PREPARED_STATEMENT__
|
#define __OB_COMMON_SQLCLIENT_OB_MYSQL_PREPARED_STATEMENT__
|
||||||
|
|
||||||
#include <mariadb/mysql.h>
|
#include <mysql/mysql.h>
|
||||||
#include "lib/string/ob_string.h"
|
#include "lib/string/ob_string.h"
|
||||||
#include "lib/allocator/ob_malloc.h"
|
#include "lib/allocator/ob_malloc.h"
|
||||||
#include "lib/mysqlclient/ob_mysql_connection.h"
|
#include "lib/mysqlclient/ob_mysql_connection.h"
|
||||||
|
@ -11,7 +11,7 @@
|
|||||||
*/
|
*/
|
||||||
|
|
||||||
#define USING_LOG_PREFIX LIB_MYSQLC
|
#define USING_LOG_PREFIX LIB_MYSQLC
|
||||||
#include <mariadb/mysql.h>
|
#include <mysql/mysql.h>
|
||||||
#include "lib/ob_define.h"
|
#include "lib/ob_define.h"
|
||||||
#include "lib/mysqlclient/ob_mysql_result.h"
|
#include "lib/mysqlclient/ob_mysql_result.h"
|
||||||
#include "lib/mysqlclient/ob_mysql_statement.h"
|
#include "lib/mysqlclient/ob_mysql_statement.h"
|
||||||
|
@ -12,7 +12,7 @@
|
|||||||
|
|
||||||
#ifndef __OB_COMMON_SQLCLIENT_OB_MYSQL_RESULT__
|
#ifndef __OB_COMMON_SQLCLIENT_OB_MYSQL_RESULT__
|
||||||
#define __OB_COMMON_SQLCLIENT_OB_MYSQL_RESULT__
|
#define __OB_COMMON_SQLCLIENT_OB_MYSQL_RESULT__
|
||||||
#include <mariadb/mysql.h>
|
#include <mysql/mysql.h>
|
||||||
#include "lib/mysqlclient/ob_mysql_result.h"
|
#include "lib/mysqlclient/ob_mysql_result.h"
|
||||||
#include "rpc/obmysql/ob_mysql_global.h"
|
#include "rpc/obmysql/ob_mysql_global.h"
|
||||||
|
|
||||||
|
@ -11,7 +11,7 @@
|
|||||||
*/
|
*/
|
||||||
|
|
||||||
#define USING_LOG_PREFIX LIB_MYSQLC
|
#define USING_LOG_PREFIX LIB_MYSQLC
|
||||||
#include <mariadb/mysql.h>
|
#include <mysql/mysql.h>
|
||||||
#include "lib/mysqlclient/ob_mysql_connection.h"
|
#include "lib/mysqlclient/ob_mysql_connection.h"
|
||||||
#include "lib/mysqlclient/ob_mysql_result.h"
|
#include "lib/mysqlclient/ob_mysql_result.h"
|
||||||
#include "lib/mysqlclient/ob_mysql_statement.h"
|
#include "lib/mysqlclient/ob_mysql_statement.h"
|
||||||
|
@ -13,7 +13,7 @@
|
|||||||
#ifndef __COMMON_OB_SERVER_CONNECTION_POOL__
|
#ifndef __COMMON_OB_SERVER_CONNECTION_POOL__
|
||||||
#define __COMMON_OB_SERVER_CONNECTION_POOL__
|
#define __COMMON_OB_SERVER_CONNECTION_POOL__
|
||||||
|
|
||||||
#include <mariadb/mysql.h>
|
#include <mysql/mysql.h>
|
||||||
#include "lib/lock/ob_spin_lock.h"
|
#include "lib/lock/ob_spin_lock.h"
|
||||||
#include "lib/mysqlclient/ob_connection_allocator.h"
|
#include "lib/mysqlclient/ob_connection_allocator.h"
|
||||||
#include "lib/mysqlclient/ob_mysql_connection.h"
|
#include "lib/mysqlclient/ob_mysql_connection.h"
|
||||||
|
@ -12,7 +12,7 @@
|
|||||||
|
|
||||||
#ifndef OCEANBASE_SINGLE_MYSQL_CONNECTION_POOL_H_
|
#ifndef OCEANBASE_SINGLE_MYSQL_CONNECTION_POOL_H_
|
||||||
#define OCEANBASE_SINGLE_MYSQL_CONNECTION_POOL_H_
|
#define OCEANBASE_SINGLE_MYSQL_CONNECTION_POOL_H_
|
||||||
#include <mariadb/mysql.h>
|
#include <mysql/mysql.h>
|
||||||
#include "lib/container/ob_se_array.h"
|
#include "lib/container/ob_se_array.h"
|
||||||
#include "lib/list/ob_list.h"
|
#include "lib/list/ob_list.h"
|
||||||
#include "lib/allocator/ob_cached_allocator.h"
|
#include "lib/allocator/ob_cached_allocator.h"
|
||||||
|
@ -314,8 +314,8 @@ else()
|
|||||||
PRIVATE
|
PRIVATE
|
||||||
-Wl,-z,notext
|
-Wl,-z,notext
|
||||||
"${ob_objects}" "${oblib_object_libraries}"
|
"${ob_objects}" "${oblib_object_libraries}"
|
||||||
-static-libgcc
|
-lgcc
|
||||||
-static-libstdc++
|
-lstdc++
|
||||||
ob_version
|
ob_version
|
||||||
ob_sql_server_parser_objects
|
ob_sql_server_parser_objects
|
||||||
oblib easy)
|
oblib easy)
|
||||||
@ -340,6 +340,8 @@ target_link_libraries(observer
|
|||||||
ob_main
|
ob_main
|
||||||
-Wl,--start-group
|
-Wl,--start-group
|
||||||
oceanbase_static
|
oceanbase_static
|
||||||
|
-lgcc
|
||||||
|
-lstdc++
|
||||||
${link_malloc_hook}
|
${link_malloc_hook}
|
||||||
${LGPL_DEPS}
|
${LGPL_DEPS}
|
||||||
oblib
|
oblib
|
||||||
|
@ -16,7 +16,7 @@
|
|||||||
#include "lib/charset/ob_dtoa.h"
|
#include "lib/charset/ob_dtoa.h"
|
||||||
#include "common/ob_field.h"
|
#include "common/ob_field.h"
|
||||||
#include "share/schema/ob_schema_getter_guard.h"
|
#include "share/schema/ob_schema_getter_guard.h"
|
||||||
#include <mariadb/mysql.h>
|
#include <mysql/mysql.h>
|
||||||
|
|
||||||
using namespace oceanbase::common;
|
using namespace oceanbase::common;
|
||||||
using namespace oceanbase::obmysql;
|
using namespace oceanbase::obmysql;
|
||||||
|
@ -7476,7 +7476,7 @@ int ObDDLService::truncate_table_in_trans(const ObTableSchema &orig_table_schema
|
|||||||
}
|
}
|
||||||
|
|
||||||
bool is_truncate_table = false;
|
bool is_truncate_table = false;
|
||||||
bool recycle_cnt = 0;
|
int recycle_cnt = 0;
|
||||||
for (int64_t i = 0; i < table_schemas.count() && OB_SUCC(ret); i++) {
|
for (int64_t i = 0; i < table_schemas.count() && OB_SUCC(ret); i++) {
|
||||||
if (0 == i) {
|
if (0 == i) {
|
||||||
is_truncate_table = true; // record create table with opertion type TRUNCATE_TABLE_CREATE
|
is_truncate_table = true; // record create table with opertion type TRUNCATE_TABLE_CREATE
|
||||||
|
@ -13,13 +13,15 @@
|
|||||||
#ifndef _OBMYSQL_ERRNO_H_
|
#ifndef _OBMYSQL_ERRNO_H_
|
||||||
#define _OBMYSQL_ERRNO_H_
|
#define _OBMYSQL_ERRNO_H_
|
||||||
|
|
||||||
#include <mariadb/mysqld_error.h>
|
#include <mysql/mysqld_error.h>
|
||||||
|
|
||||||
#define ER_AES_INVALID_IV 1882
|
#define ER_AES_INVALID_IV 1882
|
||||||
#define ER_OVERSIZE_NEED_RETRY 1887
|
#define ER_OVERSIZE_NEED_RETRY 1887
|
||||||
#define ER_AGGREGATE_ORDER_FOR_UNION 3028
|
#define ER_AGGREGATE_ORDER_FOR_UNION 3028
|
||||||
#define ER_INCORRECT_TYPE 3064
|
#define ER_INCORRECT_TYPE 3064
|
||||||
|
#if !defined(ER_ACCOUNT_HAS_BEEN_LOCKED)
|
||||||
# define ER_ACCOUNT_HAS_BEEN_LOCKED 3118
|
# define ER_ACCOUNT_HAS_BEEN_LOCKED 3118
|
||||||
|
#endif
|
||||||
#define ER_NON_DEFAULT_VALUE_FOR_GENERATED_COLUMN 3105
|
#define ER_NON_DEFAULT_VALUE_FOR_GENERATED_COLUMN 3105
|
||||||
#define ER_DEPENDENT_BY_GENERATED_COLUMN 3108
|
#define ER_DEPENDENT_BY_GENERATED_COLUMN 3108
|
||||||
|
|
||||||
|
@ -7,6 +7,7 @@
|
|||||||
set +x
|
set +x
|
||||||
CURDIR="$(dirname $(readlink -f "$0"))"
|
CURDIR="$(dirname $(readlink -f "$0"))"
|
||||||
export PATH=$CURDIR/../../../deps/3rd/usr/local/oceanbase/devtools/bin:$PATH
|
export PATH=$CURDIR/../../../deps/3rd/usr/local/oceanbase/devtools/bin:$PATH
|
||||||
|
export BISON_PKGDATADIR=$CURDIR/../../../deps/3rd/usr/local/oceanbase/devtools/share/bison
|
||||||
|
|
||||||
# generate sql_parser
|
# generate sql_parser
|
||||||
bison -v -d ../../../src/sql/parser/sql_parser_mysql_mode.y -o ../../../src/sql/parser/sql_parser_mysql_mode_tab.c
|
bison -v -d ../../../src/sql/parser/sql_parser_mysql_mode.y -o ../../../src/sql/parser/sql_parser_mysql_mode_tab.c
|
||||||
|
@ -22,9 +22,6 @@
|
|||||||
#include "sql_parser_base.h"
|
#include "sql_parser_base.h"
|
||||||
#include "sql_parser_mysql_mode_tab.h"
|
#include "sql_parser_mysql_mode_tab.h"
|
||||||
|
|
||||||
#define YYLTYPE OBSQL_MYSQL_YYLTYPE
|
|
||||||
#define YYSTYPE OBSQL_MYSQL_YYSTYPE
|
|
||||||
#define YYEMPTY OBSQL_MYSQL_YYEMPTY
|
|
||||||
extern void obsql_mysql_yyerror(YYLTYPE *yylloc, ParseResult *p, char *s,...);
|
extern void obsql_mysql_yyerror(YYLTYPE *yylloc, ParseResult *p, char *s,...);
|
||||||
extern void obsql_mysql_parser_fatal_error(yyconst char *msg, yyscan_t yyscanner);
|
extern void obsql_mysql_parser_fatal_error(yyconst char *msg, yyscan_t yyscanner);
|
||||||
#define yyerror obsql_mysql_yyerror
|
#define yyerror obsql_mysql_yyerror
|
||||||
|
@ -10,16 +10,11 @@
|
|||||||
* See the Mulan PubL v2 for more details.
|
* See the Mulan PubL v2 for more details.
|
||||||
*/
|
*/
|
||||||
%define api.pure
|
%define api.pure
|
||||||
%code requires {
|
%parse-param {ParseResult *result}
|
||||||
#include "../../../src/sql/parser/parse_node.h"
|
%name-prefix "obsql_mysql_yy"
|
||||||
#define YYEMPTY OBSQL_MYSQL_YYEMPTY
|
|
||||||
}
|
|
||||||
%param {ParseResult *result}
|
|
||||||
%define api.prefix {obsql_mysql_yy}
|
|
||||||
%locations
|
%locations
|
||||||
%verbose
|
%verbose
|
||||||
%define parse.error verbose
|
%error-verbose
|
||||||
|
|
||||||
%{
|
%{
|
||||||
#include <stdint.h>
|
#include <stdint.h>
|
||||||
#define YYDEBUG 1
|
#define YYDEBUG 1
|
||||||
|
@ -13,8 +13,8 @@
|
|||||||
#ifndef OCEANBASE_LIBOBLOG_OB_LOG_MYSQL_CONNECTOR_H_
|
#ifndef OCEANBASE_LIBOBLOG_OB_LOG_MYSQL_CONNECTOR_H_
|
||||||
#define OCEANBASE_LIBOBLOG_OB_LOG_MYSQL_CONNECTOR_H_
|
#define OCEANBASE_LIBOBLOG_OB_LOG_MYSQL_CONNECTOR_H_
|
||||||
|
|
||||||
#include <mariadb/mysql.h>
|
#include <mysql/mysql.h>
|
||||||
#include <mariadb/errmsg.h>
|
#include <mysql/errmsg.h>
|
||||||
|
|
||||||
#include "share/ob_define.h" // OB_MAX_*
|
#include "share/ob_define.h" // OB_MAX_*
|
||||||
#include "lib/utility/ob_print_utils.h" // TO_STRING_KV
|
#include "lib/utility/ob_print_utils.h" // TO_STRING_KV
|
||||||
|
Reference in New Issue
Block a user