-
Notifications
You must be signed in to change notification settings - Fork 3.7k
Description
Search before asking
- I had searched in the issues and found no similar issues.
Version
2.0.2
What's Wrong?
Execute the following sql will trigger the bug
CREATE TABLE test (
name varchar(300) NULL,
status int(11) NULL
) ENGINE=OLAP
UNIQUE KEY(name)
COMMENT 'OLAP'
DISTRIBUTED BY HASH(name) BUCKETS 1
PROPERTIES (
"replication_allocation" = "tag.location.default: 1",
"is_being_synced" = "false",
"storage_format" = "V2",
"enable_unique_key_merge_on_write" = "true",
"light_schema_change" = "true",
"disable_auto_compaction" = "false",
"enable_single_replica_compaction" = "false"
);
set enable_unique_key_partial_update = true;
insert into test(name,STATUS) values('t3',123);
enable_unique_key_partial_update = true, status filed exists in the table, but it will be triggered when the insert field uses STATUS.
be.out
F1117 11:11:59.531297 1504 block.h:203] Check failed: index < data.size()
*** Check failure stack trace: ***
@ 0x55cdb7732219 google::LogMessageFatal::~LogMessageFatal()
@ 0x55cdb034f4d9 doris::MemTable::_init_agg_functions()
@ 0x55cdb0350079 doris::MemTable::insert()
@ 0x55cdb04ae4fe doris::DeltaWriter::write()
@ 0x55cdb060b2b2 std::_Function_handler<>::_M_invoke()
@ 0x55cdb060a13c doris::TabletsChannel::add_batch()::$_1::operator()()
@ 0x55cdb06099b4 doris::TabletsChannel::add_batch()
@ 0x55cdb05599aa doris::LoadChannel::add_batch()
@ 0x55cdb05522a1 doris::LoadChannelMgr::add_batch()
@ 0x55cdb064ee48 std::_Function_handler<>::_M_invoke()
@ 0x55cdb065feab doris::WorkThreadPool<>::work_thread()
@ 0x55cdba0620c0 execute_native_thread_routine
@ 0x7f02d29f3ea5 start_thread
@ 0x7f02d320cb0d __clone
@ (nil) (unknown)
*** Query id: fa3c722628054142-bfbf65af113862c9 ***
*** tablet id: 0 ***
*** Aborted at 1700190719 (unix time) try "date -d @1700190719" if you are using GNU date ***
*** Current BE git commitID: ae923f7 ***
*** SIGABRT unknown detail explain (@0xfa1000001f3) received by PID 499 (TID 1504 OR 0x7f0121fc7700) from PID 499; stack trace: ***
0# doris::signal::(anonymous namespace)::FailureSignalHandler(int, siginfo_t*, void*) at /root/src/doris-2.0/be/src/common/signal_handler.h:417
1# 0x00007F02D3144400 in /lib64/libc.so.6
2# gsignal in /lib64/libc.so.6
3# abort in /lib64/libc.so.6
4# 0x000055CDB77381F9 in /data/doris-2.0.2/be/lib/doris_be
5# google::LogMessage::SendToLog() in /data/doris-2.0.2/be/lib/doris_be
6# google::LogMessage::Flush() in /data/doris-2.0.2/be/lib/doris_be
7# google::LogMessageFatal::~LogMessageFatal() in /data/doris-2.0.2/be/lib/doris_be
8# doris::MemTable::_init_agg_functions(doris::vectorized::Block const*) at /root/src/doris-2.0/be/src/olap/memtable.cpp:130
9# doris::MemTable::insert(doris::vectorized::Block const*, std::vector<int, std::allocator > const&, bool) at /root/src/doris-2.0/be/src/olap/memtable.cpp:203
10# doris::DeltaWriter::write(doris::vectorized::Block const*, std::vector<int, std::allocator > const&, bool) at /root/src/doris-2.0/be/src/olap/delta_writer.cpp:271
11# std::_Function_handler<doris::Status (doris::DeltaWriter*), doris::TabletsChannel::add_batch(doris::PTabletWriterAddBlockRequest const&, doris::PTabletWriterAddBlockResult*)::$_3>::_M_invoke(std::_Any_data const&, doris::DeltaWriter*&&) at /var/local/ldb-toolchain/bin/../lib/gcc/x86_64-linux-gnu/11/../../../../include/c++/11/bits/std_function.h:291
12# doris::TabletsChannel::add_batch(doris::PTabletWriterAddBlockRequest const&, doris::PTabletWriterAddBlockResult*)::$_1::operator()(unsigned int, std::function<doris::Status (doris::DeltaWriter*)>) const at /root/src/doris-2.0/be/src/runtime/tablets_channel.cpp:484
13# doris::TabletsChannel::add_batch(doris::PTabletWriterAddBlockRequest const&, doris::PTabletWriterAddBlockResult*) at /root/src/doris-2.0/be/src/runtime/tablets_channel.cpp:508
14# doris::LoadChannel::add_batch(doris::PTabletWriterAddBlockRequest const&, doris::PTabletWriterAddBlockResult*) at /root/src/doris-2.0/be/src/runtime/load_channel.cpp:128
15# doris::LoadChannelMgr::add_batch(doris::PTabletWriterAddBlockRequest const&, doris::PTabletWriterAddBlockResult*) at /root/src/doris-2.0/be/src/runtime/load_channel_mgr.cpp:192
16# std::_Function_handler<void (), doris::PInternalServiceImpl::_tablet_writer_add_block(google::protobuf::RpcController*, doris::PTabletWriterAddBlockRequest const*, doris::PTabletWriterAddBlockResult*, google::protobuf::Closure*)::$_0>::_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
17# doris::WorkThreadPool::work_thread(int) at /root/src/doris-2.0/be/src/util/work_thread_pool.hpp:160
18# execute_native_thread_routine at ../../../../../libstdc++-v3/src/c++11/thread.cc:84
19# start_thread in /lib64/libpthread.so.0
20# clone in /lib64/libc.so.6
What You Expected?
Fix bugs or return error messages instead of be coredump
How to Reproduce?
No response
Anything Else?
No response
Are you willing to submit PR?
- Yes I am willing to submit a PR!
Code of Conduct
- I agree to follow this project's Code of Conduct