查HIVE表空值字段条件导致所有BE Crash

为了更快的定位您的问题,请提供以下信息,谢谢
【详述】查HIVE表空值字段条件导致所有be Crash
【背景】普通查询
【业务影响】业务中断
【是否存算分离】否
【StarRocks版本】3.3.4 ~3.3.7
【集群规模】例如:3fe(1 follower+2observer)+6be(fe与be混部)
【机器信息】CPU虚拟核/内存/网卡,例如:48C/64G/万兆
【联系方式】社群4 - KKK
【附件】be.out
*** Aborted at 1734542295 (unix time) try “date -d @1734542295” if you are using GNU date ***
PC: @ 0x6e5b130 starrocks::parquet::BinaryToDecimalConverter<(starrocks::LogicalType)49>::convert(std::shared_ptrstarrocks::Column const&, starrocks::Column*)
*** SIGSEGV (@0x0) received by PID 116497 (TID 0x7f0fdb33b700) from PID 0; stack trace: ***
@ 0x7f105963620b __pthread_once_slow
@ 0x79d9f80 google::(anonymous namespace)::FailureSignalHandler(int, siginfo_t*, void*)
@ 0x7f105a4c620b os::Linux::chained_handler(int, siginfo*, void*)
@ 0x7f105a4cb0bd JVM_handle_linux_signal
@ 0x7f105a4beba8 signalHandler(int, siginfo*, void*)
@ 0x7f105963f630 (/usr/lib64/libpthread-2.17.so+0xf62f)
@ 0x6e5b130 starrocks::parquet::BinaryToDecimalConverter<(starrocks::LogicalType)49>::convert(std::shared_ptrstarrocks::Column const&, starrocks::Column*)
@ 0x6e514fe starrocks::parquet::StatisticsHelper::decode_value_into_column(std::shared_ptrstarrocks::Column, std::vector<std::__cxx11::basic_string<char, std::char_traits, std::allocator >, std::allocator<std::__cxx11::basic_string<char, std::char_traitsH�
@ 0x6e88625 starrocks::parquet::PageIndexReader::_deal_with_min_max_conjuncts(std::vector<starrocks::ExprContext*, std::allocatorstarrocks::ExprContext* > const&, tparquet::ColumnIndex const&, int, starrocks::TypeDescriptor const&, std::vector<unsigned char, std::alH�
@ 0x6e89e1e starrocks::parquet::PageIndexReader::generate_read_range(starrocks::SparseRange&)
@ 0x6e6f07e starrocks::parquet::GroupReader::_deal_with_pageindex()
@ 0x6e71eca starrocks::parquet::GroupReader::prepare()
@ 0x6e4304a starrocks::parquet::FileReader::_init_group_readers()
@ 0x6e435a6 starrocks::parquet::FileReader::init(starrocks::HdfsScannerContext*)
@ 0x6c938e3 starrocks::HdfsParquetScanner::do_open(starrocks::RuntimeState*)
@ 0x6c84fd0 starrocks::HdfsScanner::open(starrocks::RuntimeState*)
@ 0x6c12ba8 starrocks::connector::HiveDataSource::_init_scanner(starrocks::RuntimeState*)
@ 0x6c144a2 starrocks::connector::HiveDataSource::open(starrocks::RuntimeState*)
@ 0x42742c4 starrocks::pipeline::ConnectorChunkSource::_open_data_source(starrocks::RuntimeState*, bool*)
@ 0x4274a29 starrocks::pipeline::ConnectorChunkSource::_read_chunk(starrocks::RuntimeState*, std::shared_ptrstarrocks::Chunk)
@ 0x4590f28 starrocks::pipeline::ChunkSource::buffer_next_batch_chunks_blocking(starrocks::RuntimeState
, unsigned long, starrocks::workgroup::WorkGroup const*)
@ 0x4264ef3 auto starrocks::pipeline::ScanOperator::_trigger_next_scan(starrocks::RuntimeState*, int)::{lambda(auto:1&)#1}::operator()starrocks::workgroup::YieldContext(starrocks::workgroup::YieldContext&) const [clone .constprop.0]
@ 0x435f73e starrocks::workgroup::ScanExecutor::worker_thread()
@ 0x3837403 starrocks::ThreadPool::dispatch_thread()
@ 0x382fe06 starrocks::thread::supervise_thread(void*)
@ 0x7f1059637ea5 start_thread
@ 0x7f1058a38b0d __clone
start time: Thu Dec 19 09:24:00 CST 2024, server uptime: 09:24:00 up 216 days, 17:23, 2 users, load average: 0.00, 0.03, 0.05

  • 查询语句:
    select
    t1.week_cnt
    from
    hive.dma.xxxt1 t1
    where week_cnt = 1
    limit 1
    其中 week_cnt 字段有NULL值

原因已经确定了,我正在Fix,今天应该会提个PR

1赞

问题完美解决
小鳄老师已于 3.3.10 Fix
为SR社区点赞:100: