AetheWu opened a new issue, #61225:
URL: https://github.com/apache/doris/issues/61225

   ### Search before asking
   
   - [x] I had searched in the 
[issues](https://github.com/apache/doris/issues?q=is%3Aissue) and found no 
similar issues.
   
   
   ### Version
   
   v4.0.2
   
   ### What's Wrong?
   
   The Backend (BE) crashes consistently when reading or loading data into an 
Iceberg table. Based on the be.out logs, there are two distinct crash patterns 
occurring in the Parquet reader/Iceberg integration layer:
   
   1. Pattern A (SIGSEGV): A segmentation fault occurs during Parquet 
dictionary decoding for ByteArray types.
   
   * Signal: SIGSEGV address not mapped to object (@0x0)
   
   * Location: doris::vectorized::ByteArrayDictDecoder::_decode_values
   
   2. Pattern B (Exception): A std::out_of_range exception is thrown during 
schema initialization, likely related to schema evolution or nested fields.
   
   * Error: terminate called after throwing an instance of 'std::out_of_range' 
what(): map::at
   
   * Location: 
doris::vectorized::TableSchemaChangeHelper::StructNode::children_column_exists
   
   ### What You Expected?
   
   The BE should handle Parquet decoding and Iceberg schema mapping gracefully 
without crashing.
   
   ### How to Reproduce?
   
   1. Create an Iceberg table (with Parquet format).
   
   2. (Optional) Perform some schema changes or ensure the data contains 
dictionary-encoded string columns.
   
   3. Execute a query or a routine load that triggers the IcebergTableReader.
   
   4. BE crashes during the scanning phase.
   
   ### Anything Else?
   
   BE log: 
   ```
   SLF4J(W): Found provider 
[org.apache.logging.slf4j.SLF4JServiceProvider@64c64813]
   SLF4J(W): Found provider 
[org.slf4j.reload4j.Reload4jServiceProvider@3ecf72fd]
   SLF4J(W): See https://www.slf4j.org/codes.html#multiple_bindings for an 
explanation.
   SLF4J(I): Actual provider is of type 
[org.apache.logging.slf4j.SLF4JServiceProvider@64c64813]
   start BE in local mode
   INFO: java_cmd /usr/lib/jvm/java-17-openjdk-amd64/bin/java
   INFO: jdk_version 17
   StdoutLogger 2026-03-09 10:33:07,454 Start time: Mon Mar  9 10:33:07 CST 2026
   INFO: java_cmd /usr/lib/jvm/java-17-openjdk-amd64/bin/java
   INFO: jdk_version 17
   OpenJDK 64-Bit Server VM warning: Option CriticalJNINatives was deprecated 
in version 16.0 and will likely be removed in a future release.
   SLF4J(W): Class path contains multiple SLF4J providers.
   SLF4J(W): Found provider 
[org.apache.logging.slf4j.SLF4JServiceProvider@64c64813]
   SLF4J(W): Found provider 
[org.slf4j.reload4j.Reload4jServiceProvider@3ecf72fd]
   SLF4J(W): See https://www.slf4j.org/codes.html#multiple_bindings for an 
explanation.
   SLF4J(I): Actual provider is of type 
[org.apache.logging.slf4j.SLF4JServiceProvider@64c64813]
   start BE in local mode
   *** Query id: 3c4cc3b03f914204-981a012558fa732e ***
   *** is nereids: 1 ***
   *** tablet id: 0 ***
   *** Aborted at 1773216387 (unix time) try "date -d @1773216387" if you are 
using GNU date ***
   *** Current BE git commitID: 30d2df0459 ***
   *** SIGSEGV address not mapped to object (@0x0) received by PID 27942 (TID 
32695 OR 0x7f81c60da700) from PID 0; stack trace: ***
    0# doris::signal::(anonymous namespace)::FailureSignalHandler(int, 
siginfo_t*, void*) at 
/home/zcp/repo_center/doris_release/doris/be/src/common/signal_handler.h:420
    1# PosixSignals::chained_handler(int, siginfo_t*, void*) [clone .part.11] 
in /usr/lib/jvm/java-17-openjdk-amd64/lib/server/libjvm.so
    2# JVM_handle_linux_signal in 
/usr/lib/jvm/java-17-openjdk-amd64/lib/server/libjvm.so
    3# 0x00007F8B7CE22980 in /lib/x86_64-linux-gnu/libpthread.so.0
    4# doris::Status 
doris::vectorized::ByteArrayDictDecoder::_decode_values<false>(doris::COW<doris::vectorized::IColumn>::mutable_ptr<doris::vectorized::IColumn>&,
 std::shared_ptr<doris::vectorized::IDataType const>&, 
doris::vectorized::ColumnSelectVector&, bool) at 
/home/zcp/repo_center/doris_release/doris/be/src/vec/exec/format/parquet/byte_array_dict_decoder.cpp:132
    5# 
doris::vectorized::ByteArrayDictDecoder::decode_values(doris::COW<doris::vectorized::IColumn>::mutable_ptr<doris::vectorized::IColumn>&,
 std::shared_ptr<doris::vectorized::IDataType const>&, 
doris::vectorized::ColumnSelectVector&, bool) at 
/home/zcp/repo_center/doris_release/doris/be/src/vec/exec/format/parquet/byte_array_dict_decoder.cpp:100
    6# 
doris::vectorized::ColumnChunkReader::decode_values(doris::COW<doris::vectorized::IColumn>::mutable_ptr<doris::vectorized::IColumn>&,
 std::shared_ptr<doris::vectorized::IDataType const>&, 
doris::vectorized::ColumnSelectVector&, bool) at 
/home/zcp/repo_center/doris_release/doris/be/src/vec/exec/format/parquet/vparquet_column_chunk_reader.cpp:318
    7# doris::vectorized::ScalarColumnReader::_read_values(unsigned long, 
doris::COW<doris::vectorized::IColumn>::immutable_ptr<doris::vectorized::IColumn>&,
 std::shared_ptr<doris::vectorized::IDataType const>&, 
doris::vectorized::FilterMap&, bool) at 
/home/zcp/repo_center/doris_release/doris/be/src/vec/exec/format/parquet/vparquet_column_reader.cpp:312
    8# 
doris::vectorized::ScalarColumnReader::read_column_data(doris::COW<doris::vectorized::IColumn>::immutable_ptr<doris::vectorized::IColumn>&,
 std::shared_ptr<doris::vectorized::IDataType const>&, 
std::shared_ptr<doris::vectorized::TableSchemaChangeHelper::Node> const&, 
doris::vectorized::FilterMap&, unsigned long, unsigned long*, bool*, bool) at 
/home/zcp/repo_center/doris_release/doris/be/src/vec/exec/format/parquet/vparquet_column_reader.cpp:668
    9# 
doris::vectorized::RowGroupReader::_read_column_data(doris::vectorized::Block*, 
std::vector<std::__cxx11::basic_string<char, std::char_traits<char>, 
std::allocator<char> >, std::allocator<std::__cxx11::basic_string<char, 
std::char_traits<char>, std::allocator<char> > > > const&, unsigned long, 
unsigned long*, bool*, doris::vectorized::FilterMap&) at 
/home/zcp/repo_center/doris_release/doris/be/src/vec/exec/format/parquet/vparquet_group_reader.cpp:435
   10# doris::vectorized::RowGroupReader::next_batch(doris::vectorized::Block*, 
unsigned long, unsigned long*, bool*) at 
/home/zcp/repo_center/doris_release/doris/be/src/vec/exec/format/parquet/vparquet_group_reader.cpp:324
   11# 
doris::vectorized::ParquetReader::get_next_block(doris::vectorized::Block*, 
unsigned long*, bool*) at 
/home/zcp/repo_center/doris_release/doris/be/src/vec/exec/format/parquet/vparquet_reader.cpp:798
   12# 
doris::vectorized::IcebergTableReader::get_next_block_inner(doris::vectorized::Block*,
 unsigned long*, bool*) at 
/home/zcp/repo_center/doris_release/doris/be/src/vec/exec/format/table/iceberg_reader.cpp:100
   13# 
doris::vectorized::TableFormatReader::get_next_block(doris::vectorized::Block*, 
unsigned long*, bool*) at 
/home/zcp/repo_center/doris_release/doris/be/src/vec/exec/format/table/table_format_reader.h:82
   14# doris::vectorized::FileScanner::_get_block_wrapped(doris::RuntimeState*, 
doris::vectorized::Block*, bool*) at 
/home/zcp/repo_center/doris_release/doris/be/src/vec/exec/scan/file_scanner.cpp:472
   15# doris::vectorized::FileScanner::_get_block_impl(doris::RuntimeState*, 
doris::vectorized::Block*, bool*) at 
/home/zcp/repo_center/doris_release/doris/be/src/vec/exec/scan/file_scanner.cpp:411
   16# doris::vectorized::Scanner::get_block(doris::RuntimeState*, 
doris::vectorized::Block*, bool*) in 
/app/doris/apache-doris-4.0.2-bin-x64/be/lib/doris_be
   17# 
doris::vectorized::Scanner::get_block_after_projects(doris::RuntimeState*, 
doris::vectorized::Block*, bool*) at 
/home/zcp/repo_center/doris_release/doris/be/src/vec/exec/scan/scanner.cpp:87
   18# 
doris::vectorized::ScannerScheduler::_scanner_scan(std::shared_ptr<doris::vectorized::ScannerContext>,
 std::shared_ptr<doris::vectorized::ScanTask>) at 
/home/zcp/repo_center/doris_release/doris/be/src/vec/exec/scan/scanner_scheduler.cpp:173
   19# std::_Function_handler<bool (), 
doris::vectorized::ScannerScheduler::submit(std::shared_ptr<doris::vectorized::ScannerContext>,
 std::shared_ptr<doris::vectorized::ScanTask>)::$_0::operator()() 
const::{lambda()#1}>::_M_invoke(std::_Any_data const&) at 
/usr/local/ldb-toolchain-v0.26/bin/../lib/gcc/x86_64-pc-linux-gnu/15/include/g++-v15/bits/std_function.h:292
   20# 
doris::vectorized::ScannerSplitRunner::process_for(std::chrono::duration<long, 
std::ratio<1l, 1000000000l> >) at 
/home/zcp/repo_center/doris_release/doris/be/src/vec/exec/scan/scanner_scheduler.cpp:408
   21# doris::vectorized::PrioritizedSplitRunner::process() at 
/home/zcp/repo_center/doris_release/doris/be/src/vec/exec/executor/time_sharing/prioritized_split_runner.cpp:104
   22# doris::vectorized::TimeSharingTaskExecutor::_dispatch_thread() at 
/home/zcp/repo_center/doris_release/doris/be/src/vec/exec/executor/time_sharing/time_sharing_task_executor.cpp:572
   23# doris::Thread::supervise_thread(void*) at 
/home/zcp/repo_center/doris_release/doris/be/src/util/thread.cpp:461
   24# start_thread in /lib/x86_64-linux-gnu/libpthread.so.0
   25# __clone in /lib/x86_64-linux-gnu/libc.so.6
   
   root@dev-wzh-75:/app/doris/apache-doris-4.0.2-bin-x64/be/log# tail -n 100 
be.out 
   INFO: jdk_version 17
   StdoutLogger 2026-03-06 10:48:28,391 Start time: Fri Mar  6 10:48:28 CST 2026
   INFO: java_cmd /usr/lib/jvm/java-17-openjdk-amd64/bin/java
   INFO: jdk_version 17
   OpenJDK 64-Bit Server VM warning: Option CriticalJNINatives was deprecated 
in version 16.0 and will likely be removed in a future release.
   SLF4J(W): Class path contains multiple SLF4J providers.
   SLF4J(W): Found provider 
[org.apache.logging.slf4j.SLF4JServiceProvider@64c64813]
   SLF4J(W): Found provider 
[org.slf4j.reload4j.Reload4jServiceProvider@3ecf72fd]
   SLF4J(W): See https://www.slf4j.org/codes.html#multiple_bindings for an 
explanation.
   SLF4J(I): Actual provider is of type 
[org.apache.logging.slf4j.SLF4JServiceProvider@64c64813]
   start BE in local mode
   terminate called after throwing an instance of 'std::out_of_range'
     what():  map::at
   *** Query id: 5b42b99e5d2a4c76-bf7d7eb8d8ee9678 ***
   *** is nereids: 1 ***
   *** tablet id: 0 ***
   *** Aborted at 1772765403 (unix time) try "date -d @1772765403" if you are 
using GNU date ***
   *** Current BE git commitID: 30d2df0459 ***
   *** SIGABRT unknown detail explain (@0x2e0d) received by PID 11789 (TID 
12313 OR 0x7fb97aedc700) from PID 11789; stack trace: ***
    0# doris::signal::(anonymous namespace)::FailureSignalHandler(int, 
siginfo_t*, void*) at 
/home/zcp/repo_center/doris_release/doris/be/src/common/signal_handler.h:420
    1# 0x00007FBB0351C980 in /lib/x86_64-linux-gnu/libpthread.so.0
    2# raise in /lib/x86_64-linux-gnu/libc.so.6
    3# abort in /lib/x86_64-linux-gnu/libc.so.6
    4# __gnu_cxx::__verbose_terminate_handler() [clone .cold] in 
/app/doris/apache-doris-4.0.2-bin-x64/be/lib/doris_be
    5# __cxxabiv1::__terminate(void (*)()) in 
/app/doris/apache-doris-4.0.2-bin-x64/be/lib/doris_be
    6# 0x000055C454ECA479 in 
/app/doris/apache-doris-4.0.2-bin-x64/be/lib/doris_be
    7# __cxa_rethrow.cold in 
/app/doris/apache-doris-4.0.2-bin-x64/be/lib/doris_be
    8# std::__throw_out_of_range(char const*) in 
/app/doris/apache-doris-4.0.2-bin-x64/be/lib/doris_be
    9# 0x000055C44F6C41D4 in 
/app/doris/apache-doris-4.0.2-bin-x64/be/lib/doris_be
   10# 
doris::vectorized::TableSchemaChangeHelper::StructNode::children_column_exists(std::__cxx11::basic_string<char,
 std::char_traits<char>, std::allocator<char> >) const at 
/home/zcp/repo_center/doris_release/doris/be/src/vec/exec/format/table/table_format_reader.h:195
   11# 
doris::vectorized::ParquetReader::init_reader(std::vector<std::__cxx11::basic_string<char,
 std::char_traits<char>, std::allocator<char> >, 
std::allocator<std::__cxx11::basic_string<char, std::char_traits<char>, 
std::allocator<char> > > > const&, 
std::unordered_map<std::__cxx11::basic_string<char, std::char_traits<char>, 
std::allocator<char> >, 
std::variant<doris::ColumnValueRange<(doris::PrimitiveType)3>, 
doris::ColumnValueRange<(doris::PrimitiveType)4>, 
doris::ColumnValueRange<(doris::PrimitiveType)5>, 
doris::ColumnValueRange<(doris::PrimitiveType)6>, 
doris::ColumnValueRange<(doris::PrimitiveType)7>, 
doris::ColumnValueRange<(doris::PrimitiveType)8>, 
doris::ColumnValueRange<(doris::PrimitiveType)9>, 
doris::ColumnValueRange<(doris::PrimitiveType)36>, 
doris::ColumnValueRange<(doris::PrimitiveType)37>, 
doris::ColumnValueRange<(doris::PrimitiveType)15>, 
doris::ColumnValueRange<(doris::PrimitiveType)10>, 
doris::ColumnValueRange<(doris::PrimitiveType)23>, doris::ColumnValueRange<(do
 ris::PrimitiveType)11>, doris::ColumnValueRange<(doris::PrimitiveType)25>, 
doris::ColumnValueRange<(doris::PrimitiveType)12>, 
doris::ColumnValueRange<(doris::PrimitiveType)26>, 
doris::ColumnValueRange<(doris::PrimitiveType)20>, 
doris::ColumnValueRange<(doris::PrimitiveType)2>, 
doris::ColumnValueRange<(doris::PrimitiveType)19>, 
doris::ColumnValueRange<(doris::PrimitiveType)28>, 
doris::ColumnValueRange<(doris::PrimitiveType)29>, 
doris::ColumnValueRange<(doris::PrimitiveType)30>, 
doris::ColumnValueRange<(doris::PrimitiveType)35> >, 
std::hash<std::__cxx11::basic_string<char, std::char_traits<char>, 
std::allocator<char> > >, std::equal_to<std::__cxx11::basic_string<char, 
std::char_traits<char>, std::allocator<char> > >, 
std::allocator<std::pair<std::__cxx11::basic_string<char, 
std::char_traits<char>, std::allocator<char> > const, 
std::variant<doris::ColumnValueRange<(doris::PrimitiveType)3>, 
doris::ColumnValueRange<(doris::PrimitiveType)4>, 
doris::ColumnValueRange<(doris::PrimitiveType)5
 >, doris::ColumnValueRange<(doris::PrimitiveType)6>, 
 >doris::ColumnValueRange<(doris::PrimitiveType)7>, 
 >doris::ColumnValueRange<(doris::PrimitiveType)8>, 
 >doris::ColumnValueRange<(doris::PrimitiveType)9>, 
 >doris::ColumnValueRange<(doris::PrimitiveType)36>, 
 >doris::ColumnValueRange<(doris::PrimitiveType)37>, 
 >doris::ColumnValueRange<(doris::PrimitiveType)15>, 
 >doris::ColumnValueRange<(doris::PrimitiveType)10>, 
 >doris::ColumnValueRange<(doris::PrimitiveType)23>, 
 >doris::ColumnValueRange<(doris::PrimitiveType)11>, 
 >doris::ColumnValueRange<(doris::PrimitiveType)25>, 
 >doris::ColumnValueRange<(doris::PrimitiveType)12>, 
 >doris::ColumnValueRange<(doris::PrimitiveType)26>, 
 >doris::ColumnValueRange<(doris::PrimitiveType)20>, 
 >doris::ColumnValueRange<(doris::PrimitiveType)2>, 
 >doris::ColumnValueRange<(doris::PrimitiveType)19>, 
 >doris::ColumnValueRange<(doris::PrimitiveType)28>, 
 >doris::ColumnValueRange<(doris::PrimitiveType)29>, 
 >doris::ColumnValueRange<(doris::PrimitiveType)30>, 
 >doris::ColumnValueRange<(doris
 ::PrimitiveType)35> > > > > const*, 
std::vector<std::shared_ptr<doris::vectorized::VExprContext>, 
std::allocator<std::shared_ptr<doris::vectorized::VExprContext> > > const&, 
doris::TupleDescriptor const*, doris::RowDescriptor const*, 
std::unordered_map<std::__cxx11::basic_string<char, std::char_traits<char>, 
std::allocator<char> >, int, std::hash<std::__cxx11::basic_string<char, 
std::char_traits<char>, std::allocator<char> > >, 
std::equal_to<std::__cxx11::basic_string<char, std::char_traits<char>, 
std::allocator<char> > >, 
std::allocator<std::pair<std::__cxx11::basic_string<char, 
std::char_traits<char>, std::allocator<char> > const, int> > > const*, 
std::vector<std::shared_ptr<doris::vectorized::VExprContext>, 
std::allocator<std::shared_ptr<doris::vectorized::VExprContext> > > const*, 
std::unordered_map<int, 
std::vector<std::shared_ptr<doris::vectorized::VExprContext>, 
std::allocator<std::shared_ptr<doris::vectorized::VExprContext> > >, 
std::hash<int>, std::equal_to<int>, std::alloc
 ator<std::pair<int const, 
std::vector<std::shared_ptr<doris::vectorized::VExprContext>, 
std::allocator<std::shared_ptr<doris::vectorized::VExprContext> > > > > > 
const*, std::shared_ptr<doris::vectorized::TableSchemaChangeHelper::Node>, 
bool) at 
/home/zcp/repo_center/doris_release/doris/be/src/vec/exec/format/parquet/vparquet_reader.cpp:350
   12# 
doris::vectorized::IcebergParquetReader::init_reader(std::vector<std::__cxx11::basic_string<char,
 std::char_traits<char>, std::allocator<char> >, 
std::allocator<std::__cxx11::basic_string<char, std::char_traits<char>, 
std::allocator<char> > > > const&, 
std::unordered_map<std::__cxx11::basic_string<char, std::char_traits<char>, 
std::allocator<char> >, 
std::variant<doris::ColumnValueRange<(doris::PrimitiveType)3>, 
doris::ColumnValueRange<(doris::PrimitiveType)4>, 
doris::ColumnValueRange<(doris::PrimitiveType)5>, 
doris::ColumnValueRange<(doris::PrimitiveType)6>, 
doris::ColumnValueRange<(doris::PrimitiveType)7>, 
doris::ColumnValueRange<(doris::PrimitiveType)8>, 
doris::ColumnValueRange<(doris::PrimitiveType)9>, 
doris::ColumnValueRange<(doris::PrimitiveType)36>, 
doris::ColumnValueRange<(doris::PrimitiveType)37>, 
doris::ColumnValueRange<(doris::PrimitiveType)15>, 
doris::ColumnValueRange<(doris::PrimitiveType)10>, 
doris::ColumnValueRange<(doris::PrimitiveType)23>, doris::ColumnValueRa
 nge<(doris::PrimitiveType)11>, 
doris::ColumnValueRange<(doris::PrimitiveType)25>, 
doris::ColumnValueRange<(doris::PrimitiveType)12>, 
doris::ColumnValueRange<(doris::PrimitiveType)26>, 
doris::ColumnValueRange<(doris::PrimitiveType)20>, 
doris::ColumnValueRange<(doris::PrimitiveType)2>, 
doris::ColumnValueRange<(doris::PrimitiveType)19>, 
doris::ColumnValueRange<(doris::PrimitiveType)28>, 
doris::ColumnValueRange<(doris::PrimitiveType)29>, 
doris::ColumnValueRange<(doris::PrimitiveType)30>, 
doris::ColumnValueRange<(doris::PrimitiveType)35> >, 
std::hash<std::__cxx11::basic_string<char, std::char_traits<char>, 
std::allocator<char> > >, std::equal_to<std::__cxx11::basic_string<char, 
std::char_traits<char>, std::allocator<char> > >, 
std::allocator<std::pair<std::__cxx11::basic_string<char, 
std::char_traits<char>, std::allocator<char> > const, 
std::variant<doris::ColumnValueRange<(doris::PrimitiveType)3>, 
doris::ColumnValueRange<(doris::PrimitiveType)4>, 
doris::ColumnValueRange<(doris::Primitiv
 eType)5>, doris::ColumnValueRange<(doris::PrimitiveType)6>, 
doris::ColumnValueRange<(doris::PrimitiveType)7>, 
doris::ColumnValueRange<(doris::PrimitiveType)8>, 
doris::ColumnValueRange<(doris::PrimitiveType)9>, 
doris::ColumnValueRange<(doris::PrimitiveType)36>, 
doris::ColumnValueRange<(doris::PrimitiveType)37>, 
doris::ColumnValueRange<(doris::PrimitiveType)15>, 
doris::ColumnValueRange<(doris::PrimitiveType)10>, 
doris::ColumnValueRange<(doris::PrimitiveType)23>, 
doris::ColumnValueRange<(doris::PrimitiveType)11>, 
doris::ColumnValueRange<(doris::PrimitiveType)25>, 
doris::ColumnValueRange<(doris::PrimitiveType)12>, 
doris::ColumnValueRange<(doris::PrimitiveType)26>, 
doris::ColumnValueRange<(doris::PrimitiveType)20>, 
doris::ColumnValueRange<(doris::PrimitiveType)2>, 
doris::ColumnValueRange<(doris::PrimitiveType)19>, 
doris::ColumnValueRange<(doris::PrimitiveType)28>, 
doris::ColumnValueRange<(doris::PrimitiveType)29>, 
doris::ColumnValueRange<(doris::PrimitiveType)30>, doris::ColumnValueRange
 <(doris::PrimitiveType)35> > > > > const*, 
std::vector<std::shared_ptr<doris::vectorized::VExprContext>, 
std::allocator<std::shared_ptr<doris::vectorized::VExprContext> > > const&, 
doris::TupleDescriptor const*, doris::RowDescriptor const*, 
std::unordered_map<std::__cxx11::basic_string<char, std::char_traits<char>, 
std::allocator<char> >, int, std::hash<std::__cxx11::basic_string<char, 
std::char_traits<char>, std::allocator<char> > >, 
std::equal_to<std::__cxx11::basic_string<char, std::char_traits<char>, 
std::allocator<char> > >, 
std::allocator<std::pair<std::__cxx11::basic_string<char, 
std::char_traits<char>, std::allocator<char> > const, int> > > const*, 
std::vector<std::shared_ptr<doris::vectorized::VExprContext>, 
std::allocator<std::shared_ptr<doris::vectorized::VExprContext> > > const*, 
std::unordered_map<int, 
std::vector<std::shared_ptr<doris::vectorized::VExprContext>, 
std::allocator<std::shared_ptr<doris::vectorized::VExprContext> > >, 
std::hash<int>, std::equal_to<int>, std
 ::allocator<std::pair<int const, 
std::vector<std::shared_ptr<doris::vectorized::VExprContext>, 
std::allocator<std::shared_ptr<doris::vectorized::VExprContext> > > > > > 
const*) at 
/home/zcp/repo_center/doris_release/doris/be/src/vec/exec/format/table/iceberg_reader.cpp:463
   13# 
doris::vectorized::FileScanner::_init_parquet_reader(std::unique_ptr<doris::vectorized::ParquetReader,
 std::default_delete<doris::vectorized::ParquetReader> >&&, 
doris::FileMetaCache*) at 
/home/zcp/repo_center/doris_release/doris/be/src/vec/exec/scan/file_scanner.cpp:1203
   14# 
doris::vectorized::FileScanner::read_lines_from_range(doris::TFileRangeDesc 
const&, std::__cxx11::list<long, std::allocator<long> > const&, 
doris::vectorized::Block*, doris::ExternalFileMappingInfo const&, long*, long*) 
at 
/home/zcp/repo_center/doris_release/doris/be/src/vec/exec/scan/file_scanner.cpp:1508
   15# std::_Function_handler<bool (), 
doris::RowIdStorageReader::read_batch_external_row(unsigned long, 
doris::PRequestBlockDesc const&, std::shared_ptr<doris::IdFileMap>, 
std::vector<doris::SlotDescriptor, std::allocator<doris::SlotDescriptor> >&, 
std::shared_ptr<doris::FileMapping>, doris::TUniqueId const&, 
doris::vectorized::Block&, doris::PRuntimeProfileTree*, long*, long*, unsigned 
long*)::$_0::operator()() const::{lambda()#1}>::_M_invoke(std::_Any_data 
const&) at 
/usr/local/ldb-toolchain-v0.26/bin/../lib/gcc/x86_64-pc-linux-gnu/15/include/g++-v15/bits/std_function.h:292
   16# 
doris::vectorized::TaskExecutorSimplifiedScanScheduler::submit_scan_task(doris::vectorized::SimplifiedScanTask,
 std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> 
> const&)::{lambda()#2}::operator()() const at 
/home/zcp/repo_center/doris_release/doris/be/src/vec/exec/scan/scanner_scheduler.h:339
   17# 
doris::vectorized::ScannerSplitRunner::process_for(std::chrono::duration<long, 
std::ratio<1l, 1000000000l> >) at 
/home/zcp/repo_center/doris_release/doris/be/src/vec/exec/scan/scanner_scheduler.cpp:408
   18# doris::vectorized::PrioritizedSplitRunner::process() at 
/home/zcp/repo_center/doris_release/doris/be/src/vec/exec/executor/time_sharing/prioritized_split_runner.cpp:104
   19# doris::vectorized::TimeSharingTaskExecutor::_dispatch_thread() at 
/home/zcp/repo_center/doris_release/doris/be/src/vec/exec/executor/time_sharing/time_sharing_task_executor.cpp:572
   20# doris::Thread::supervise_thread(void*) at 
/home/zcp/repo_center/doris_release/doris/be/src/util/thread.cpp:461
   21# start_thread in /lib/x86_64-linux-gnu/libpthread.so.0
   22# __clone in /lib/x86_64-linux-gnu/libc.so.6
   
   INFO: java_cmd /usr/lib/jvm/java-17-openjdk-amd64/bin/java
   INFO: jdk_version 17
   StdoutLogger 2026-03-06 10:51:34,667 Start time: Fri Mar  6 10:51:34 CST 2026
   INFO: java_cmd /usr/lib/jvm/java-17-openjdk-amd64/bin/java
   INFO: jdk_version 17
   OpenJDK 64-Bit Server VM warning: Option CriticalJNINatives was deprecated 
in version 16.0 and will likely be removed in a future release.
   SLF4J(W): Class path contains multiple SLF4J providers.
   SLF4J(W): Found provider 
[org.apache.logging.slf4j.SLF4JServiceProvider@64c64813]
   SLF4J(W): Found provider 
[org.slf4j.reload4j.Reload4jServiceProvider@3ecf72fd]
   SLF4J(W): See https://www.slf4j.org/codes.html#multiple_bindings for an 
explanation.
   SLF4J(I): Actual provider is of type 
[org.apache.logging.slf4j.SLF4JServiceProvider@64c64813]
   start BE in local mode
   INFO: java_cmd /usr/lib/jvm/java-17-openjdk-amd64/bin/java
   INFO: jdk_version 17
   StdoutLogger 2026-03-09 10:33:07,454 Start time: Mon Mar  9 10:33:07 CST 2026
   INFO: java_cmd /usr/lib/jvm/java-17-openjdk-amd64/bin/java
   INFO: jdk_version 17
   OpenJDK 64-Bit Server VM warning: Option CriticalJNINatives was deprecated 
in version 16.0 and will likely be removed in a future release.
   SLF4J(W): Class path contains multiple SLF4J providers.
   SLF4J(W): Found provider 
[org.apache.logging.slf4j.SLF4JServiceProvider@64c64813]
   SLF4J(W): Found provider 
[org.slf4j.reload4j.Reload4jServiceProvider@3ecf72fd]
   SLF4J(W): See https://www.slf4j.org/codes.html#multiple_bindings for an 
explanation.
   SLF4J(I): Actual provider is of type 
[org.apache.logging.slf4j.SLF4JServiceProvider@64c64813]
   start BE in local mode
   *** Query id: 3c4cc3b03f914204-981a012558fa732e ***
   *** is nereids: 1 ***
   *** tablet id: 0 ***
   *** Aborted at 1773216387 (unix time) try "date -d @1773216387" if you are 
using GNU date ***
   *** Current BE git commitID: 30d2df0459 ***
   *** SIGSEGV address not mapped to object (@0x0) received by PID 27942 (TID 
32695 OR 0x7f81c60da700) from PID 0; stack trace: ***
    0# doris::signal::(anonymous namespace)::FailureSignalHandler(int, 
siginfo_t*, void*) at 
/home/zcp/repo_center/doris_release/doris/be/src/common/signal_handler.h:420
    1# PosixSignals::chained_handler(int, siginfo_t*, void*) [clone .part.11] 
in /usr/lib/jvm/java-17-openjdk-amd64/lib/server/libjvm.so
    2# JVM_handle_linux_signal in 
/usr/lib/jvm/java-17-openjdk-amd64/lib/server/libjvm.so
    3# 0x00007F8B7CE22980 in /lib/x86_64-linux-gnu/libpthread.so.0
    4# doris::Status 
doris::vectorized::ByteArrayDictDecoder::_decode_values<false>(doris::COW<doris::vectorized::IColumn>::mutable_ptr<doris::vectorized::IColumn>&,
 std::shared_ptr<doris::vectorized::IDataType const>&, 
doris::vectorized::ColumnSelectVector&, bool) at 
/home/zcp/repo_center/doris_release/doris/be/src/vec/exec/format/parquet/byte_array_dict_decoder.cpp:132
    5# 
doris::vectorized::ByteArrayDictDecoder::decode_values(doris::COW<doris::vectorized::IColumn>::mutable_ptr<doris::vectorized::IColumn>&,
 std::shared_ptr<doris::vectorized::IDataType const>&, 
doris::vectorized::ColumnSelectVector&, bool) at 
/home/zcp/repo_center/doris_release/doris/be/src/vec/exec/format/parquet/byte_array_dict_decoder.cpp:100
    6# 
doris::vectorized::ColumnChunkReader::decode_values(doris::COW<doris::vectorized::IColumn>::mutable_ptr<doris::vectorized::IColumn>&,
 std::shared_ptr<doris::vectorized::IDataType const>&, 
doris::vectorized::ColumnSelectVector&, bool) at 
/home/zcp/repo_center/doris_release/doris/be/src/vec/exec/format/parquet/vparquet_column_chunk_reader.cpp:318
    7# doris::vectorized::ScalarColumnReader::_read_values(unsigned long, 
doris::COW<doris::vectorized::IColumn>::immutable_ptr<doris::vectorized::IColumn>&,
 std::shared_ptr<doris::vectorized::IDataType const>&, 
doris::vectorized::FilterMap&, bool) at 
/home/zcp/repo_center/doris_release/doris/be/src/vec/exec/format/parquet/vparquet_column_reader.cpp:312
    8# 
doris::vectorized::ScalarColumnReader::read_column_data(doris::COW<doris::vectorized::IColumn>::immutable_ptr<doris::vectorized::IColumn>&,
 std::shared_ptr<doris::vectorized::IDataType const>&, 
std::shared_ptr<doris::vectorized::TableSchemaChangeHelper::Node> const&, 
doris::vectorized::FilterMap&, unsigned long, unsigned long*, bool*, bool) at 
/home/zcp/repo_center/doris_release/doris/be/src/vec/exec/format/parquet/vparquet_column_reader.cpp:668
    9# 
doris::vectorized::RowGroupReader::_read_column_data(doris::vectorized::Block*, 
std::vector<std::__cxx11::basic_string<char, std::char_traits<char>, 
std::allocator<char> >, std::allocator<std::__cxx11::basic_string<char, 
std::char_traits<char>, std::allocator<char> > > > const&, unsigned long, 
unsigned long*, bool*, doris::vectorized::FilterMap&) at 
/home/zcp/repo_center/doris_release/doris/be/src/vec/exec/format/parquet/vparquet_group_reader.cpp:435
   10# doris::vectorized::RowGroupReader::next_batch(doris::vectorized::Block*, 
unsigned long, unsigned long*, bool*) at 
/home/zcp/repo_center/doris_release/doris/be/src/vec/exec/format/parquet/vparquet_group_reader.cpp:324
   11# 
doris::vectorized::ParquetReader::get_next_block(doris::vectorized::Block*, 
unsigned long*, bool*) at 
/home/zcp/repo_center/doris_release/doris/be/src/vec/exec/format/parquet/vparquet_reader.cpp:798
   12# 
doris::vectorized::IcebergTableReader::get_next_block_inner(doris::vectorized::Block*,
 unsigned long*, bool*) at 
/home/zcp/repo_center/doris_release/doris/be/src/vec/exec/format/table/iceberg_reader.cpp:100
   13# 
doris::vectorized::TableFormatReader::get_next_block(doris::vectorized::Block*, 
unsigned long*, bool*) at 
/home/zcp/repo_center/doris_release/doris/be/src/vec/exec/format/table/table_format_reader.h:82
   14# doris::vectorized::FileScanner::_get_block_wrapped(doris::RuntimeState*, 
doris::vectorized::Block*, bool*) at 
/home/zcp/repo_center/doris_release/doris/be/src/vec/exec/scan/file_scanner.cpp:472
   15# doris::vectorized::FileScanner::_get_block_impl(doris::RuntimeState*, 
doris::vectorized::Block*, bool*) at 
/home/zcp/repo_center/doris_release/doris/be/src/vec/exec/scan/file_scanner.cpp:411
   16# doris::vectorized::Scanner::get_block(doris::RuntimeState*, 
doris::vectorized::Block*, bool*) in 
/app/doris/apache-doris-4.0.2-bin-x64/be/lib/doris_be
   17# 
doris::vectorized::Scanner::get_block_after_projects(doris::RuntimeState*, 
doris::vectorized::Block*, bool*) at 
/home/zcp/repo_center/doris_release/doris/be/src/vec/exec/scan/scanner.cpp:87
   18# 
doris::vectorized::ScannerScheduler::_scanner_scan(std::shared_ptr<doris::vectorized::ScannerContext>,
 std::shared_ptr<doris::vectorized::ScanTask>) at 
/home/zcp/repo_center/doris_release/doris/be/src/vec/exec/scan/scanner_scheduler.cpp:173
   19# std::_Function_handler<bool (), 
doris::vectorized::ScannerScheduler::submit(std::shared_ptr<doris::vectorized::ScannerContext>,
 std::shared_ptr<doris::vectorized::ScanTask>)::$_0::operator()() 
const::{lambda()#1}>::_M_invoke(std::_Any_data const&) at 
/usr/local/ldb-toolchain-v0.26/bin/../lib/gcc/x86_64-pc-linux-gnu/15/include/g++-v15/bits/std_function.h:292
   20# 
doris::vectorized::ScannerSplitRunner::process_for(std::chrono::duration<long, 
std::ratio<1l, 1000000000l> >) at 
/home/zcp/repo_center/doris_release/doris/be/src/vec/exec/scan/scanner_scheduler.cpp:408
   21# doris::vectorized::PrioritizedSplitRunner::process() at 
/home/zcp/repo_center/doris_release/doris/be/src/vec/exec/executor/time_sharing/prioritized_split_runner.cpp:104
   22# doris::vectorized::TimeSharingTaskExecutor::_dispatch_thread() at 
/home/zcp/repo_center/doris_release/doris/be/src/vec/exec/executor/time_sharing/time_sharing_task_executor.cpp:572
   23# doris::Thread::supervise_thread(void*) at 
/home/zcp/repo_center/doris_release/doris/be/src/util/thread.cpp:461
   24# start_thread in /lib/x86_64-linux-gnu/libpthread.so.0
   25# __clone in /lib/x86_64-linux-gnu/libc.so.6
   ```
   
   
   ### Are you willing to submit PR?
   
   - [ ] Yes I am willing to submit a PR!
   
   ### Code of Conduct
   
   - [x] I agree to follow this project's [Code of 
Conduct](https://www.apache.org/foundation/policies/conduct)
   


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]


---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to