首页 > 技术文章 > Doris搭建中的问题

1394htw 2020-04-26 09:25 原文

具体步骤可以参照这里:

https://github.com/apache/incubator-doris/wiki/Doris-Install

 

 

一、编译(物理机直接编译)

 

1、编译 Doris FE 和 BE:[bits/c++config.h] 或 [cstddef] 找不到

 

[  9%] Built target Exprs

Scanning dependencies of target compile_to_ir_sse
[  9%] Generating /root/incubator-doris-DORIS-0.11.38-release/gensrc/build/doris_ir/doris_sse.bc
In file included from /root/incubator-doris-DORIS-0.11.38-release/be/src/codegen/doris_ir.cpp:20:
In file included from /root/incubator-doris-DORIS-0.11.38-release/be/src/codegen/codegen_anyval_ir.cpp:20:
In file included from /root/incubator-doris-DORIS-0.11.38-release/be/src/runtime/string_value.hpp:21:
In file included from /root/incubator-doris-DORIS-0.11.38-release/be/src/runtime/string_value.h:23:
In file included from /root/incubator-doris-DORIS-0.11.38-release/be/src/udf/udf.h:21:
In file included from /root/incubator-doris-DORIS-0.11.38-release/thirdparty/installed//include/boost/cstdint.hpp:36:
In file included from /root/incubator-doris-DORIS-0.11.38-release/thirdparty/installed//include/boost/config.hpp:44:
/root/incubator-doris-DORIS-0.11.38-release/thirdparty/installed//include/boost/config/select_stdlib_config.hpp:18:12: fatal error: 'cstddef' file not found
#  include <cstddef>
           ^
1 error generated.
make[2]: *** [src/codegen/CMakeFiles/compile_to_ir_sse.dir/build.make:63: /root/incubator-doris-DORIS-0.11.38-release/gensrc/build/doris_ir/doris_sse.bc] Error 1
make[1]: *** [CMakeFiles/Makefile2:224: src/codegen/CMakeFiles/compile_to_ir_sse.dir/all] Error 2
make: *** [Makefile:130: all] Error 2

 

编译过程中可能会遇到几个找不到文件的问题,可以参照https://github.com/apache/incubator-doris/issues/297的办法处理,

有的只配置环境变量就可以,有的还需要修改CMake文件中的关联,

 

2、变量定义

[ 12%] Built target CodeGen
[ 13%] Building CXX object src/common/CMakeFiles/Common.dir/logconfig.cpp.o
/root/incubator-doris-DORIS-0.11.38-release/be/src/common/logconfig.cpp: In functionbool doris::init_glog(const char*, bool)’:
/root/incubator-doris-DORIS-0.11.38-release/be/src/common/logconfig.cpp:68:5: error: ‘FLAGS_log_filenum_quota’ was not declared in this scope
     FLAGS_log_filenum_quota = config::sys_log_roll_num;
     ^~~~~~~~~~~~~~~~~~~~~~~
/root/incubator-doris-DORIS-0.11.38-release/be/src/common/logconfig.cpp:99:9: error: ‘FLAGS_log_split_method’ was not declared in this scope
         FLAGS_log_split_method = "day";
         ^~~~~~~~~~~~~~~~~~~~~~
/root/incubator-doris-DORIS-0.11.38-release/be/src/common/logconfig.cpp:102:9: error: ‘FLAGS_log_split_method’ was not declared in this scope
         FLAGS_log_split_method = "hour";
         ^~~~~~~~~~~~~~~~~~~~~~
/root/incubator-doris-DORIS-0.11.38-release/be/src/common/logconfig.cpp:105:9: error: ‘FLAGS_log_split_method’ was not declared in this scope
         FLAGS_log_split_method = "size";
         ^~~~~~~~~~~~~~~~~~~~~~
make[2]: *** [src/common/CMakeFiles/Common.dir/build.make:135: src/common/CMakeFiles/Common.dir/logconfig.cpp.o] Error 1
make[1]: *** [CMakeFiles/Makefile2:307: src/common/CMakeFiles/Common.dir/all] Error 2
make: *** [Makefile:130: all] Error 2

奈何技不如人,这个问题解决不了,官方的建议是使用docker环境编译,

通过github上联系了官方,要了个编译好的版本去部署了,

 

二、部署

1、添加BE后,FE日志报:WARN 31 [HeartbeatMgr.runAfterCatalogReady():135] get bad heartbeat response: type: BACKEND, status: BAD, msg: actual backend local ip: 127.0.0.1

这个很大可能是配置文件priority_networks = 172.20.144.233/24有问题,多网卡出问题可能大一点,如果影响不大,可以把地址都配置上,

 

2、查看服务状态时,若报错信息是refused,除了可能的通信故障,还可能是你没启动服务,

所以建议确认节点上相应的服务启动后,再去看服务状态,

推荐阅读