Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
oceanbase
oblogproxy
提交
302085df
O
oblogproxy
项目概览
oceanbase
/
oblogproxy
大约 1 年 前同步成功
通知
24
Star
29
Fork
10
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
DevOps
流水线
流水线任务
计划
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
O
oblogproxy
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
DevOps
DevOps
流水线
流水线任务
计划
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
流水线任务
提交
Issue看板
体验新版 GitCode,发现更多精彩内容 >>
未验证
提交
302085df
编写于
5月 24, 2022
作者:
F
Fankux
提交者:
GitHub
5月 24, 2022
浏览文件
操作
浏览文件
下载
差异文件
Merge pull request #28 from shimengfei/dev
upgrade libobcdc
上级
a0fc3ce6
8fe65199
变更
10
隐藏空白更改
内联
并排
Showing
10 changed file
with
51 addition
and
34 deletion
+51
-34
CMakeLists.txt
CMakeLists.txt
+23
-12
LICENSE
LICENSE
+2
-2
README.md
README.md
+1
-1
cmake/rpm.cmake
cmake/rpm.cmake
+7
-5
deps/oblogproxy.el7.x86_64.deps
deps/oblogproxy.el7.x86_64.deps
+1
-1
deps/oblogproxy.el8.x86_64.deps
deps/oblogproxy.el8.x86_64.deps
+1
-1
docs/manual.md
docs/manual.md
+11
-10
rpm/oblogproxy-build.sh
rpm/oblogproxy-build.sh
+1
-1
src/communication/communicator.cpp
src/communication/communicator.cpp
+0
-1
src/oblogreader/oblog_access.h
src/oblogreader/oblog_access.h
+4
-0
未找到文件。
CMakeLists.txt
浏览文件 @
302085df
...
...
@@ -15,6 +15,7 @@ option(WITH_DEMO "With Demos" OFF)
option
(
WITH_JNI_LIB
"With oblogreader jni lib"
OFF
)
option
(
WITH_GLOG
"With google log"
ON
)
option
(
WITH_DEPS
"With precompiled deps"
ON
)
option
(
USE_OBCDC_NS
"With libobcdc"
ON
)
option
(
USE_LIBOBLOG
"With precompiled liboblog"
OFF
)
option
(
USE_CXX11_ABI
"Build with C++11 ABI"
OFF
)
...
...
@@ -27,6 +28,12 @@ SET(DEP_VAR $ENV{DEP_VAR})
SET
(
JAVA_HOME $ENV{JAVA_HOME}
)
SET
(
FIND_LIBOBLOG ON
)
if
(
USE_OBCDC_NS
)
SET
(
OBCDC_NAME
"libobcdc"
)
SET
(
OBCDC_NAME_VAR
"-DUSE_OBCDC_NS"
)
else
()
SET
(
OBCDC_NAME
"liboblog"
)
endif
()
if
(
WITH_DEPS
)
execute_process
(
COMMAND bash deps/dep_create.sh
${
OMS_PROJECT_BUILD_PATH
}
/deps
...
...
@@ -39,7 +46,7 @@ if (WITH_DEPS)
if
(
NOT USE_LIBOBLOG
)
SET
(
FIND_LIBOBLOG OFF
)
SET
(
LIBOBLOG_INCLUDE_PATH
${
DEP_VAR
}
/usr/include/
)
SET
(
LIBOBLOG_LIBRARIES
${
DEP_VAR
}
/usr/lib/
liboblog
.so
)
SET
(
LIBOBLOG_LIBRARIES
${
DEP_VAR
}
/usr/lib/
${
OBCDC_NAME
}
.so
)
endif
()
# make openssl found
...
...
@@ -176,10 +183,10 @@ SET_PROPERTY(TARGET oblogmsg PROPERTY IMPORTED_LOCATION ${OBLOGMSG_LIBRARIES})
# oblog
if
(
FIND_LIBOBLOG
)
find_path
(
LIBOBLOG_INCLUDE_PATH NAMES
liboblog
.h
)
find_library
(
LIBOBLOG_LIBRARIES NAMES
liboblog
.so
)
find_path
(
LIBOBLOG_INCLUDE_PATH NAMES
${
OBCDC_NAME
}
.h
)
find_library
(
LIBOBLOG_LIBRARIES NAMES
${
OBCDC_NAME
}
.so
)
if
((
NOT LIBOBLOG_INCLUDE_PATH
)
OR
(
NOT LIBOBLOG_LIBRARIES
))
message
(
FATAL_ERROR
"Fail to find
liboblog
"
)
message
(
FATAL_ERROR
"Fail to find
${
OBCDC_NAME
}
"
)
endif
()
endif
()
GET_FILENAME_COMPONENT
(
LIBOBLOG_LIB_DIR
${
LIBOBLOG_LIBRARIES
}
DIRECTORY
)
...
...
@@ -220,9 +227,8 @@ endif ()
SET
(
CMAKE_CXX_STANDARD 11
)
SET
(
CMAKE_CXX_STANDARD_REQUIRED ON
)
SET
(
CMAKE_CXX_FLAGS
"
${
CMAKE_CXX_FLAGS
}
-std=c++11 -static-libstdc++
${
DEBUG_SYMBOL
}
-pipe -m64 -Wall -fPIC -Wno-reorder
${
ASAN_COMPILE_OPTION
}
-D__OMS_VERSION__=
\\\"
${
GIT_VERSION
}
\\\"
${
OBLOGMSG_MAPPING
}
"
)
SET
(
CMAKE_C_FLAGS
"
${
CMAKE_C_FLAGS
}
-std=c99
${
DEBUG_SYMBOL
}
-pipe -m64 -Wall -fPIC
${
ASAN_COMPILE_OPTION
}
-D__STDC_LIMIT_MACROS -D__OMS_VERSION__=
\\\"
${
GIT_VERSION
}
\\\"
${
OBLOGMSG_MAPPING
}
"
)
SET
(
CMAKE_CXX_FLAGS
"
${
CMAKE_CXX_FLAGS
}
-std=c++11 -static-libstdc++
${
DEBUG_SYMBOL
}
-pipe -m64 -Wall -fPIC -Wno-reorder
${
ASAN_COMPILE_OPTION
}
-D__OMS_VERSION__=
\\\"
${
GIT_VERSION
}
\\\"
${
OBLOGMSG_MAPPING
}
${
OBCDC_NAME_VAR
}
"
)
SET
(
CMAKE_C_FLAGS
"
${
CMAKE_C_FLAGS
}
-std=c99
${
DEBUG_SYMBOL
}
-pipe -m64 -Wall -fPIC
${
ASAN_COMPILE_OPTION
}
-D__STDC_LIMIT_MACROS -D__OMS_VERSION__=
\\\"
${
GIT_VERSION
}
\\\"
${
OBLOGMSG_MAPPING
}
${
OBCDC_NAME_VAR
}
"
)
if
(
CMAKE_SYSTEM_NAME STREQUAL
"Linux"
)
SET
(
PLATFORM_SPEC rt
)
...
...
@@ -302,6 +308,11 @@ if (WITH_GLOG)
endif
()
target_include_directories
(
common PUBLIC
${
COMMON_INC
}
)
if
(
USE_OBCDC_NS
)
set
(
DEP_OBCDC_LIB obcdc
)
else
()
set
(
DEP_OBCDC_LIB oblog
)
endif
()
# oblogreader
set
(
OBLOGREADER_INC
${
COMMON_INC
}
./src/oblogreader/
${
LIBOBLOG_INCLUDE_PATH
}
)
file
(
GLOB OBLOGREADER_SRC ./src/oblogreader/*.cpp
)
...
...
@@ -310,7 +321,7 @@ add_dependencies(oblogreader_static common oblogmsg)
set_target_properties
(
oblogreader_static PROPERTIES OUTPUT_NAME
"oblogreader"
)
target_include_directories
(
oblogreader_static PUBLIC
${
OBLOGREADER_INC
}
)
target_link_directories
(
oblogreader_static PUBLIC
${
DEP_LIB_PATH
}
)
target_link_libraries
(
oblogreader_static libcommon.a
oblog
${
DEP_LIBS
}
)
target_link_libraries
(
oblogreader_static libcommon.a
${
DEP_OBCDC_LIB
}
${
DEP_LIBS
}
)
# oblogreader_jni
if
(
WITH_JNI_LIB
)
...
...
@@ -320,7 +331,7 @@ if (WITH_JNI_LIB)
add_dependencies
(
oblogreader_jni oblogreader_static
)
target_include_directories
(
oblogreader_jni PUBLIC
${
OBLOGREADER_JNI_INC
}
)
target_link_directories
(
oblogreader_jni PUBLIC
${
DEP_LIB_PATH
}
)
target_link_libraries
(
oblogreader_jni liboblogreader.a libcommon.a
oblog
${
DEP_LIBS
}
)
target_link_libraries
(
oblogreader_jni liboblogreader.a libcommon.a
${
DEP_OBCDC_LIB
}
${
DEP_LIBS
}
)
endif
()
# logproxy static
...
...
@@ -332,7 +343,7 @@ add_dependencies(logproxy_static oblogreader_static oblogmsg)
set_target_properties
(
logproxy_static PROPERTIES OUTPUT_NAME
"logproxy"
)
target_include_directories
(
logproxy_static PUBLIC
${
LOGPROXY_INC
}
)
target_link_directories
(
logproxy_static PUBLIC
${
DEP_LIB_PATH
}
)
target_link_libraries
(
logproxy_static liboblogreader.a libcommon.a
oblog
${
DEP_LIBS
}
)
target_link_libraries
(
logproxy_static liboblogreader.a libcommon.a
${
DEP_OBCDC_LIB
}
${
DEP_LIBS
}
)
SET
(
BASE_LIBS liblogproxy.a liboblogreader.a libcommon.a
)
...
...
@@ -341,7 +352,7 @@ add_executable(logproxy ./src/entry.cpp)
add_dependencies
(
logproxy logproxy_static
)
target_include_directories
(
logproxy PUBLIC
${
DEP_INC
}
${
LOGPROXY_INC
}
)
target_link_directories
(
logproxy PUBLIC
${
DEP_LIB_PATH
}
)
target_link_libraries
(
logproxy
${
BASE_LIBS
}
oblog
${
DEP_LIBS
}
)
target_link_libraries
(
logproxy
${
BASE_LIBS
}
${
DEP_OBCDC_LIB
}
${
DEP_LIBS
}
)
target_link_options
(
logproxy PUBLIC
"
${
ASAN_LINK_OPTION
}
"
)
if
(
WITH_DEMO
)
...
...
@@ -372,7 +383,7 @@ if (WITH_TEST)
add_dependencies
(
test_oblogreader logproxy_static gtest
)
target_include_directories
(
test_oblogreader PUBLIC
${
LOGPROXY_INC
}
)
target_link_directories
(
test_oblogreader PUBLIC
${
DEP_LIB_PATH
}
)
target_link_libraries
(
test_oblogreader
${
BASE_LIBS
}
oblog
${
DEP_LIBS
}
)
target_link_libraries
(
test_oblogreader
${
BASE_LIBS
}
${
DEP_OBCDC_LIB
}
${
DEP_LIBS
}
)
target_link_options
(
test_oblogreader PUBLIC
${
ASAN_LINK_OPTION
}
)
endif
()
...
...
LICENSE
浏览文件 @
302085df
...
...
@@ -80,7 +80,7 @@
3, 请将如下声明文本放入每个源文件的头部注释中。
Copyright (c) 2021 OceanBase
OceanBase
CE
is licensed under Mulan PubL v2.
OceanBase
Migration Service LogProxy
is licensed under Mulan PubL v2.
You can use this software according to the terms and conditions of the Mulan PubL v2.
You may obtain a copy of Mulan PubL v2 at:
http://license.coscl.org.cn/MulanPubL-2.0
...
...
@@ -170,7 +170,7 @@ Create a file named “LICENSE” which contains the whole context of this Licen
Attach the statement to the appropriate annotated syntax at the beginning of each source file.
Copyright (c) 2021 OceanBase
OceanBase
CE
is licensed under Mulan PubL v2.
OceanBase
Migration Service LogProxy
is licensed under Mulan PubL v2.
You can use this software according to the terms and conditions of the Mulan PubL v2.
You may obtain a copy of Mulan PubL v2 at:
http://license.coscl.org.cn/MulanPubL-2.0
...
...
README.md
浏览文件 @
302085df
...
...
@@ -28,7 +28,7 @@ oblogproxy会安装在目录 `/usr/local/oblogproxy` 。
|---------------|------------|
| 3.1.1 | 1.0.0 |
| 3.1.2 | 1.0.1 |
| 3.1.3 |
暂无
|
| 3.1.3 |
1.0.2
|
### 3. 配置系统租户
获得observer的sys租户账号密码,通常在创建observer集群时创建,也可以单独创建。oblogproxy需要加密的配置,执行以下命令即可得到:
...
...
cmake/rpm.cmake
浏览文件 @
302085df
...
...
@@ -11,10 +11,10 @@ set(CPACK_RPM_PACKAGE_RELEASE_DIST ON)
# RPM package informations.
set
(
CPACK_PACKAGING_INSTALL_PREFIX /usr/local/oblogproxy
)
list
(
APPEND CPACK_RPM_EXCLUDE_FROM_AUTO_FILELIST_ADDITION
"/usr/local/oblogproxy"
)
set
(
CPACK_PACKAGE_NAME
"oblogproxy"
)
set
(
CPACK_PACKAGE_NAME
${
OBLOGPROXY_PACKAGE_NAME
}
)
set
(
CPACK_PACKAGE_DESCRIPTION_SUMMARY
"oblogproxy is a clog proxy server for OceanBase CE"
)
set
(
CPACK_PACKAGE_VENDOR
"Ant Group CO., Ltd."
)
set
(
CPACK_PACKAGE_VERSION
1.0.1
)
set
(
CPACK_PACKAGE_VERSION
${
OBLOGPROXY_PACKAGE_VERSION
}
)
set
(
CPACK_PACKAGE_VERSION_MAJOR 1
)
set
(
CPACK_PACKAGE_VERSION_MINOR 0
)
set
(
CPACK_PACKAGE_VERSION_PATCH 1
)
...
...
@@ -60,9 +60,11 @@ file(WRITE ${CMAKE_CURRENT_BINARY_DIR}/utils_post.script "/sbin/ldconfig /usr/li
set
(
CPACK_RPM_UTILS_POST_INSTALL_SCRIPT_FILE
${
CMAKE_CURRENT_BINARY_DIR
}
/utils_post.script
)
file
(
WRITE
${
CMAKE_CURRENT_BINARY_DIR
}
/utils_postun.script
"/sbin/ldconfig"
)
set
(
CPACK_RPM_UTILS_POST_UNINSTALL_SCRIPT_FILE
${
CMAKE_CURRENT_BINARY_DIR
}
/utils_postun.script
)
set
(
CPACK_RPM_PACKAGE_REQUIRES
"devdeps-libaio >= 0.3.112, devdeps-openssl-static >= 1.0.1e, oceanbase-ce-devel = 3.1.2"
)
if
(
USE_OBCDC_NS
)
set
(
CPACK_RPM_PACKAGE_REQUIRES
"devdeps-libaio >= 0.3.112, devdeps-openssl-static >= 1.0.1e, oceanbase-ce-devel = 3.1.3"
)
else
()
set
(
CPACK_RPM_PACKAGE_REQUIRES
"devdeps-libaio >= 0.3.112, devdeps-openssl-static >= 1.0.1e, oceanbase-ce-devel = 3.1.2"
)
endif
()
# install cpack to make everything work
include
(
CPack
)
...
...
deps/oblogproxy.el7.x86_64.deps
浏览文件 @
302085df
...
...
@@ -7,7 +7,7 @@ stable_repo=https://mirrors.aliyun.com/oceanbase/community/stable/el/7/x86_64/
[deps]
devdeps-openssl-static-1.0.1e-3.el7.x86_64.rpm
devdeps-libaio-0.3.112-3.el7.x86_64.rpm
oceanbase-ce-devel-3.1.
2-100003920211230
10.el7.x86_64.rpm
oceanbase-ce-devel-3.1.
3-101000320220415
10.el7.x86_64.rpm
[tools]
obdevtools-gcc-5.2.0-3.el7.x86_64.rpm
\ No newline at end of file
deps/oblogproxy.el8.x86_64.deps
浏览文件 @
302085df
...
...
@@ -7,7 +7,7 @@ stable_repo=https://mirrors.aliyun.com/oceanbase/community/stable/el/8/x86_64/
[deps]
devdeps-openssl-static-1.0.1e-3.el8.x86_64.rpm
devdeps-libaio-0.3.112-3.el8.x86_64.rpm
oceanbase-ce-devel-3.1.
2-10000392021123010
.el8.x86_64.rpm
oceanbase-ce-devel-3.1.
3-10100042022051821
.el8.x86_64.rpm
[tools]
obdevtools-gcc-5.2.0-3.el8.x86_64.rpm
docs/manual.md
浏览文件 @
302085df
...
...
@@ -80,16 +80,17 @@ make -j 6
#### 全部编译参数
| 选项 | 默认 | 说明 |
| ------ | -------- | ------- |
| WITH_DEBUG | ON | 调试模式带 Debug 符号 |
| WITH_ASAN | OFF | 编译带
[
AddressSanitizer
](
https://github.com/google/sanitizers
)
|
| WITH_TEST | OFF | 测试 |
| WITH_DEMO | OFF | Demo |
| WITH_GLOG | ON | 使用glog |
| WITH_DEPS | ON | 自动下载预编译依赖 |
| USE_LIBOBLOG | OFF | 使用自定义预编译的liboblog |
| USE_CXX11_ABI | ON | 是否使用C++11 ABI。注意如果用了预编译的依赖,需要保持一致,否则会找不到符号 |
| 选项 | 默认 | 说明 |
| ------ |-----|-------------------------------------------------------------------------------------------|
| WITH_DEBUG | ON | 调试模式带 Debug 符号 |
| WITH_ASAN | OFF | 编译带
[
AddressSanitizer
](
https://github.com/google/sanitizers
)
|
| WITH_TEST | OFF | 测试 |
| WITH_DEMO | OFF | Demo |
| WITH_GLOG | ON | 使用glog |
| WITH_DEPS | ON | 自动下载预编译依赖 |
| USE_LIBOBLOG | OFF | 使用自定义预编译的liboblog |
| USE_OBCDC_NS | ON | 是否使用obcdc进行编译。注意oblogproxy 对 obcdc (原liboblog) 有版本依赖,USE_OBCDC_NS=OFF时,兼容obcdc 3.1.2及之前版本 |
| USE_CXX11_ABI | ON | 是否使用C++11 ABI。注意如果用了预编译的依赖,需要保持一致,否则会找不到符号 |
### 编译依赖说明
...
...
rpm/oblogproxy-build.sh
浏览文件 @
302085df
...
...
@@ -43,7 +43,7 @@ cd $PROJECT_DIR
rm
-rf
build_rpm
mkdir
build_rpm
cd
build_rpm
${
CMAKE_COMMAND
}
..
-DOBLOGPROXY_RELEASEID
=
$RELEASE
${
CMAKE_COMMAND
}
..
-DOBLOGPROXY_RELEASEID
=
$RELEASE
-DUSE_OBCDC_NS
=
ON
-DOBLOGPROXY_PACKAGE_NAME
=
$PROJECT_NAME
-DOBLOGPROXY_PACKAGE_VERSION
=
$VERSION
make
-j
${
CPU_CORES
}
rpm
# archiving artifacts
...
...
src/communication/communicator.cpp
浏览文件 @
302085df
...
...
@@ -464,7 +464,6 @@ void Communicator::on_event(int fd, short event, void* arg)
delete
msg
;
}
}
//对于ER_CLOSE_CHANNEL,先处理错误再释放内存
switch
(
err
)
{
case
EventResult
::
ER_CLOSE_CHANNEL
:
c
.
remove_channel
(
ch
->
_peer
);
...
...
src/oblogreader/oblog_access.h
浏览文件 @
302085df
...
...
@@ -18,7 +18,11 @@
// this three MUST BE ordered like this
#include "LogRecord.h"
#ifdef USE_OBCDC_NS
#include "libobcdc.h"
#else
#include "liboblog.h"
#endif
#ifndef OB_TIMEOUT
#define OB_TIMEOUT -4012
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录