常见 Crash / BUG / 优化 查询

  1. StarRocks写的Parquet文件,Hive读不了

Failed with exception java.io.IOException:org.apache.parquet.io.ParquetDecodingException: Can not read value at 0 in block -1 in file
  • Github Issue:

  • Github Fix PR:

  • Jira

  • 问题版本:

    • 3.2.0~latest

    • 3.3.0~3.3.4

  • 修复版本:

    • 3.2未修复

    • 3.3.5+

  • 问题原因:

    • StarRocks写的是新版本的Parquet格式,Hive <=3.0 的版本识别不了
  • 临时解决办法:

  1. Morsel queue crash

*** SIGSEGV (@0xa0) received by PID 1328927 (TID 0x14f3e4c3a640) from PID 160; stack trace: ***
    @     0x14f509070ee8 (/usr/lib/x86_64-linux-gnu/libc.so.6+0x99ee7)
    @          0xa37c049 google::(anonymous namespace)::FailureSignalHandler(int, siginfo_t*, void*)
    @     0x14f509e7835d os::Linux::chained_handler(int, siginfo*, void*)
    @     0x14f509e7df5f JVM_handle_linux_signal
    @     0x14f509e6f968 signalHandler(int, siginfo*, void*)
    @     0x14f509019520 (/usr/lib/x86_64-linux-gnu/libc.so.6+0x4251f)
    @          0x6d622bc starrocks::TabletReader::_to_seek_tuple(std::shared_ptr<starrocks::TabletSchema const> const&, starrocks::OlapTuple const&, starrocks::SeekTuple*, starrocks::MemPool*)
    @          0x6d62ebe starrocks::TabletReader::parse_seek_range(std::shared_ptr<starrocks::TabletSchema const> const&, starrocks::TabletReaderParams::RangeStartOperation, starrocks::TabletReaderParams::RangeEndOperation, std::vector<starrocks::OlapTuple, std::allocator<starrockP^Y
    @          0x758ae83 starrocks::pipeline::PhysicalSplitMorselQueue::_init_segment()
    @          0x758b46f starrocks::pipeline::PhysicalSplitMorselQueue::_try_get_split_from_single_tablet()
    @          0x758bd67 starrocks::pipeline::PhysicalSplitMorselQueue::try_get()
    @          0x7587e53 starrocks::pipeline::BucketSequenceMorselQueue::try_get()
    @          0x5456ace starrocks::pipeline::ScanOperator::_pickup_morsel(starrocks::RuntimeState*, int)
    @          0x54555bc starrocks::pipeline::ScanOperator::_try_to_trigger_next_scan(starrocks::RuntimeState*)
    @          0x545584a starrocks::pipeline::ScanOperator::pull_chunk(starrocks::RuntimeState*)
    @          0x544c8b8 starrocks::pipeline::PipelineDriver::process(starrocks::RuntimeState*, int)
    @          0x7ebce58 starrocks::pipeline::GlobalDriverExecutor::_worker_thread()
    @          0x8c00b73 starrocks::ThreadPool::dispatch_thread()
    @          0x8bf81c9 starrocks::Thread::supervise_thread(void*)
    @     0x14f50906bac3 (/usr/lib/x86_64-linux-gnu/libc.so.6+0x94ac2)
    @     0x14f5090fd850 (/usr/lib/x86_64-linux-gnu/libc.so.6+0x12684f)
  • Github Issue:

  • Github Fix PR:

  • Jira

  • 问题版本:

    • 3.3.0~3.3.17

    • 3.4.0~3.4.16

    • 3.5.0~3.5.4

  • 修复版本:

    • 3.3.18+

    • 3.4.17+

    • 3.5.5+

  • 问题原因:

  • 临时解决办法:

    • set global enable_per_bucket_optimize = false
  1. Arm parquet reader crash

*** SIGSEGV (@0x0) received by PID 28 (TID 0xfffea329fe00) LWP(602) from PID 0; stack trace: ***
    @     0xffffb81e25c4 (/usr/lib/aarch64-linux-gnu/libc.so.6+0x825c3)
    @          0xf73dd28 google::(anonymous namespace)::FailureSignalHandler(int, siginfo_t*, void*)
    @     0xffffb989c850 ([vdso]+0x84f)
    @     0xffffb81f7bbc (/usr/lib/aarch64-linux-gnu/libc.so.6+0x97bbb)
    @          0xb350584 starrocks::parquet::Int32ToDateConverter::convert(starrocks::Cow<starrocks::Column>::ImmutPtr<starrocks::Column> const&, starrocks::Column*)
    @          0xb37c948 starrocks::parquet::StatisticsHelper::decode_value_into_column(starrocks::Cow<starrocks::Column>::MutPtr<starrocks::Column> const&, std::vector<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::allocator<std::__cxx11::ba
    @          0xb29af2c starrocks::parquet::RawColumnReader::_row_group_zone_map_filter(std::vector<starrocks::ColumnPredicate const*, std::allocator<starrocks::ColumnPredicate const*> > const&, starrocks::CompoundNodeType, starrocks::TypeDescriptor const&, unsigned long, unsigne
    @          0xb29f114 starrocks::parquet::ScalarColumnReader::row_group_zone_map_filter(std::vector<starrocks::ColumnPredicate const*, std::allocator<starrocks::ColumnPredicate const*> > const&, starrocks::CompoundNodeType, unsigned long, unsigned long) const
    @          0xb254340 starrocks::StatusOr<std::optional<starrocks::SparseRange<unsigned long> > > starrocks::parquet::PredicateFilterEvaluator::visit_for_rowgroup_zonemap<(starrocks::CompoundNodeType)0>(starrocks::PredicateCompoundNode<(starrocks::CompoundNodeType)0> const&)
    @          0xb2573cc starrocks::StatusOr<std::optional<starrocks::SparseRange<unsigned long> > > starrocks::parquet::PredicateFilterEvaluator::operator()<(starrocks::CompoundNodeType)0>(starrocks::PredicateCompoundNode<(starrocks::CompoundNodeType)0> const&, starrocks::parquet
    @          0xb22ac94 starrocks::parquet::FileReader::_filter_group(std::shared_ptr<starrocks::parquet::GroupReader> const&)
    @          0xb22b3a8 starrocks::parquet::FileReader::_init_group_readers()
    @          0xb22c3ac starrocks::parquet::FileReader::init(starrocks::HdfsScannerContext*)
    @          0xab53f4c starrocks::HdfsParquetScanner::do_open(starrocks::RuntimeState*)
    @          0xaa038a8 starrocks::HdfsScanner::open(starrocks::RuntimeState*)
    @          0xa9de95c starrocks::connector::HiveDataSource::_init_scanner(starrocks::RuntimeState*)
    @          0xa9df6d8 starrocks::connector::HiveDataSource::open(starrocks::RuntimeState*)
    @          0xa9bcf88 starrocks::pipeline::ConnectorChunkSource::_open_data_source(starrocks::RuntimeState*, bool*)
    @          0xa9bd9fc starrocks::pipeline::ConnectorChunkSource::_read_chunk(starrocks::RuntimeState*, std::shared_ptr<starrocks::Chunk>*)
    @          0xa9c399c starrocks::pipeline::ChunkSource::buffer_next_batch_chunks_blocking(starrocks::RuntimeState*, unsigned long, starrocks::workgroup::WorkGroup const*)
    @          0xa299bf0 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]
    @          0xa92c89c starrocks::workgroup::ScanExecutor::worker_thread()
    @          0xc411dc4 starrocks::ThreadPool::dispatch_thread()
    @          0xc408a68 starrocks::Thread::supervise_thread(void*)
  1. min_by/max_by 函数 crash

*** Aborted at 1754458860 (unix time) try "date -d @1754458860" if you are using GNU date ***
PC: @     0x7f0ee04d5711 __memcpy_ssse3_back
*** SIGSEGV (@0x7f0e74196ff1) received by PID 16389 (TID 0x7f0e5895e700) from PID 1947824113; stack trace: ***
    @     0x7f0ee107b20b __pthread_once_slow
    @          0x7dc3dc0 google::(anonymous namespace)::FailureSignalHandler(int, siginfo_t*, void*)
    @     0x7f0ee1f0935d os::Linux::chained_handler(int, siginfo*, void*)
    @     0x7f0ee1f0ef5f JVM_handle_linux_signal
    @     0x7f0ee1f00968 signalHandler(int, siginfo*, void*)
    @     0x7f0ee1084630 (/usr/lib64/libpthread-2.17.so+0xf62f)
    @     0x7f0ee04d5711 __memcpy_ssse3_back
    @          0x4ce607d starrocks::AggregateFunctionBatchHelper<starrocks::MinByAggregateData<(starrocks::LogicalType)17, true, int>, starrocks::MaxMinByAggregateFunction<(starrocks::LogicalType)17, starrocks::MinByAggregateData<(starrocks::LogicalType)17, true, int>, starrocks::����
    @          0x46200dc starrocks::Aggregator::compute_batch_agg_states(starrocks::Chunk*, unsigned long)
    @          0x451ffcd starrocks::pipeline::AggregateBlockingSinkOperator::push_chunk(starrocks::RuntimeState*, std::shared_ptr<starrocks::Chunk> const&)
    @          0x452f3e1 starrocks::pipeline::BucketProcessSinkOperator::push_chunk(starrocks::RuntimeState*, std::shared_ptr<starrocks::Chunk> const&)
    @          0x44f49d4 starrocks::pipeline::PipelineDriver::process(starrocks::RuntimeState*, int)
    @          0x47b85e3 starrocks::pipeline::GlobalDriverExecutor::_worker_thread()
    @          0x398e8e3 starrocks::ThreadPool::dispatch_thread()
    @          0x3985f66 starrocks::Thread::supervise_thread(void*)
    @     0x7f0ee107cea5 start_thread
    @     0x7f0ee047db0d __clone
  1. RecoverableStub crash

*** SIGABRT (@0x272000296e6) received by PID 169702 (TID 0x15162f6fb640) from PID 169702; stack trace: ***
    @     0x151dd468ee18 __pthread_once_slow
    @          0x7da2500 google::(anonymous namespace)::FailureSignalHandler(int, siginfo_t*, void*)
    @     0x151dd463e6f0 (/usr/lib64/libc.so.6+0x3e6ef)
    @     0x151dd468b94c __pthread_kill_implementation
    @     0x151dd463e646 __GI_raise
    @     0x151dd46287f3 __GI_abort
    @          0x3328555 __gnu_cxx::__verbose_terminate_handler() [clone .cold]
    @          0xc480c56 __cxxabiv1::__terminate(void (*)())
    @          0xc480cc1 std::terminate()
    @          0xc48144f __cxa_pure_virtual
    @          0x3821545 starrocks::LocalTabletsChannel::_abort_replica_tablets(starrocks::PTabletWriterAddChunkRequest const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::unordered_map<long, std::vector<long, std::allocator<long> >X^S
    @          0x38237f0 starrocks::LocalTabletsChannel::add_chunk(starrocks::Chunk*, starrocks::PTabletWriterAddChunkRequest const&, starrocks::PTabletWriterAddBatchResult*)
    @          0x3815939 starrocks::LoadChannel::_add_chunk(starrocks::Chunk*, starrocks::PTabletWriterAddChunkRequest const&, starrocks::PTabletWriterAddBatchResult*)
    @          0x3816b2c starrocks::LoadChannel::add_chunks(starrocks::PTabletWriterAddChunksRequest const&, starrocks::PTabletWriterAddBatchResult*)
    @          0x38101c3 starrocks::LoadChannelMgr::add_chunks(starrocks::PTabletWriterAddChunksRequest const&, starrocks::PTabletWriterAddBatchResult*)
    @          0x38d163b starrocks::BackendInternalServiceImpl<starrocks::PInternalService>::tablet_writer_add_chunks(google::protobuf::RpcController*, starrocks::PTabletWriterAddChunksRequest const*, starrocks::PTabletWriterAddBatchResult*, google::protobuf::Closure*)
    @          0x802f2d4 brpc::policy::ProcessRpcRequest(brpc::InputMessageBase*)
    @          0x7f5b677 brpc::ProcessInputMessage(void*)
    @          0x7f5c9f5 brpc::InputMessenger::OnNewMessages(brpc::Socket*)
    @          0x7f4acee brpc::Socket::ProcessEvent(void*)
    @          0x7f1bd72 bthread::TaskGroup::task_runner(long)
    @          0x8071201 bthread_make_fcontext