apache / doris

Apache Doris is an easy-to-use, high performance and unified analytics database.
https://doris.apache.org
Apache License 2.0
12.83k stars 3.3k forks source link

[Bug] 从kafka消费数据,报json解析错误(json格式正常),be 进程退出 #25178

Open ranryl opened 1 year ago

ranryl commented 1 year ago

Search before asking

Version

2.0.1

What's Wrong?

I1009 03:15:30.523063 1155 parse2column.cpp:207] failed to parse {"cluster":"idc-cal","container":"promtail","file":"/var/log/pods/loki_promtail-962m7_049a026c-2a0c-451a-a9f8-8a40b1c0b1bd/promtail/0.log","message":"level=info ts=2023-10-08T15:41:20.13224675Z caller=tailer.go:202 component=tailer msg=\"skipping update of position for a file which does not currently exist\" path=/var/log/pods/argo_flow-lwinebqn-exec-1ac69x8mmsh5vvng3l1dzlxlh-2282225908_09e197b8-ec56-48d3-81cc-3579c13ab6f5/main/0.log","namespace":"loki","node_name":"idc-k8s-cal-node-cicd-03","pod":"promtail-962m7","pod_ip":"172.19.88.199","source_type":"kubernetes_logs","stream":"stderr","timestamp":"2023-10-08T15:41:20.208653319Z","timestamp_end":"2023-10-08T15:41:20.208653319Z", length= 688 failed to parse {"cluster":"idc-cal","container":"adviz-test20230508","file":"/var/log/pods/adviz_adviz-test20230508-1696778690949521152-8g97t_34118bb7-1164-489c-aec5-c1125b867f99/adviz-test20230508/0.log","message":"","namespace":"adviz","node_name":"p-hfidc-3f-73","pod":"adviz-test20230508-1696778690949521152-8g97t","pod_ip":"172.18.21.166","source_type":"kubernetes_logs","stream":"stderr","timestamp":"2023-10-08T15:25:16.194382777Z","timestamp_end":"2023-10-08T15:25:16.194382777Z", length= 472

0# doris::signal::(anonymous namespace)::FailureSignalHandler(int, siginfo_t, void) at /root/src/doris-2.0/be/src/common/signal_handler.h:413 1# os::Linux::chained_handler(int, siginfo_t, void) in /usr/lib/jvm/java-1.8.0/jre/lib/amd64/server/libjvm.so 2# JVM_handle_linux_signal in /usr/lib/jvm/java-1.8.0/jre/lib/amd64/server/libjvm.so 3# signalHandler(int, siginfo_t, void) in /usr/lib/jvm/java-1.8.0/jre/lib/amd64/server/libjvm.so 4# 0x00007F751B2C0400 in /lib64/libc.so.6 5# doris::vectorized::NewJsonReader::_parse_dynamic_json(doris::RuntimeState, bool, bool, doris::vectorized::Block&, std::vector<doris::SlotDescriptor, std::allocator<doris::SlotDescriptor> > const&) at /root/src/doris-2.0/be/src/vec/exec/format/json/new_json_reader.cpp:469 6# doris::vectorized::NewJsonReader::_vhandle_dynamic_json(doris::RuntimeState, doris::vectorized::Block&, std::vector<doris::SlotDescriptor, std::allocator<doris::SlotDescriptor> > const&, bool, bool) in /opt/apache-doris/be/lib/doris_be 7# doris::vectorized::NewJsonReader::get_next_block(doris::vectorized::Block, unsigned long, bool) at /root/src/doris-2.0/be/src/vec/exec/format/json/new_json_reader.cpp:218 8# doris::vectorized::VFileScanner::_get_block_impl(doris::RuntimeState, doris::vectorized::Block, bool) at /root/src/doris-2.0/be/src/vec/exec/scan/vfile_scanner.cpp:258 9# doris::vectorized::VScanner::get_block(doris::RuntimeState, doris::vectorized::Block, bool) in /opt/apache-doris/be/lib/doris_be 10# doris::vectorized::ScannerScheduler::_scanner_scan(doris::vectorized::ScannerScheduler, doris::vectorized::ScannerContext, std::shared_ptr) at /root/src/doris-2.0/be/src/vec/exec/scan/scanner_scheduler.cpp:339 11# std::_Function_handler<void (), doris::vectorized::ScannerScheduler::_schedule_scanners(doris::vectorized::ScannerContext)::$_1::operator()() const::{lambda()#3}>::_M_invoke(std::_Any_data const&) at /var/local/ldb-toolchain/bin/../lib/gcc/x86_64-linux-gnu/11/../../../../include/c++/11/bits/std_function.h:291 12# doris::ThreadPool::dispatch_thread() in /opt/apache-doris/be/lib/doris_be 13# doris::Thread::supervise_thread(void*) at /root/src/doris-2.0/be/src/util/thread.cpp:466 14# start_thread in /lib64/libpthread.so.0 15# clone in /lib64/libc.so.6

/opt/apache-doris/be/bin/start_be.sh: line 330: 574 Segmentation fault (core dumped) ${LIMIT:+${LIMIT}} "${DORIS_HOME}/lib/doris_be" "$@" 2>&1 < /dev/null

What You Expected?

doris部署到k8s环境中 从kafka routine load 日志数据,部分数据报failed to parse,提示json解析错误,从字符串长度来看,刚好缺少最后一个字符},只要报failed to parse的行都是这样,很奇怪。一段时间后be进程会退出

How to Reproduce?

No response

Anything Else?

No response

Are you willing to submit PR?

Code of Conduct

liugddx commented 1 year ago

Has the problem been solved?