[Bug] BE crash when double type be key in agg table
- Dominant language
- Java
- Stars
- 15.9k
- Forks
- 3.9k
- Avg merge
- 2d 23h
- Merged PRs (30d)
- 520
Description
### 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
2.x/3.x/4.x
### What's Wrong?
BE crash when double type be key in agg table
be crash when double type be key in agg table
Reproduce issue:
Create a agg table:
Add a key column and Load some data failed:
Cause some BE crash:
*** Query id: 87829b77dc5146bc-b83d8ff9a23f3414 ***
*** is nereids: 0 ***
*** tablet id: 14007 ***
*** Aborted at 1774869662 (unix time) try "date -d @1774869662" if you are using GNU date ***
*** Current BE git commitID: d84ef32c71 ***
*** SIGSEGV address not mapped to object (@0x0) received by PID 1734613 (TID 1747110 OR 0x7fe71cd61640) from PID 0; stack trace: ***
0# 0x0000562265D0134E in /opt/huawei/Bigdata/FusionInsight_Doris_8.6.0.1/install/FusionInsight-Doris-2.1.7/doris-be/lib/doris_be
1# PosixSignals::chained_handler(int, siginfo_t*, void*) in /opt/huawei/Bigdata/common/runtime0/jdk-21.0.8//lib/server/libjvm.so
2# JVM_handle_linux_signal in /opt/huawei/Bigdata/common/runtime0/jdk-21.0.8//lib/server/libjvm.so
3# 0x00007FEF8363C070 in /usr/lib64/libc.so.6
4# doris::segment_v2::VerticalSegmentWriter::_full_encode_keys[abi:cxx11](std::vector > const&, unsigned long) in /opt/huawei/Bigdata/FusionInsight_Doris_8.6.0.1/install/FusionInsight-Doris-2.1.7/doris-be/lib/doris_be
5# doris::segment_v2::VerticalSegmentWriter::write_batch() in /opt/huawei/Bigdata/FusionInsight_Doris_8.6.0.1/install/FusionInsight-Doris-2.1.7/doris-be/lib/doris_be
6# doris::SegmentFlusher::flush_single_block(doris::vectorized::Block const*, int, long*) in /opt/huawei/Bigdata/FusionInsight_Doris_8.6.0.1/install/FusionInsight-Doris-2.1.7/doris-be/lib/doris_be
7# doris::SegmentCreator::flush_single_block(doris::vectorized::Block const*, int, long*) in /opt/huawei/Bigdata/FusionInsight_Doris_8.6.0.1/install/FusionInsight-Doris-2.1.7/doris-be/lib/doris_be
8# doris::BetaRowsetWriterV2::flush_memtable(doris::vectorized::Block*, int, long*) in /opt/huawei/Bigdata/FusionInsight_Doris_8.6.0.1/install/FusionInsight-Doris-2.1.7/doris-be/lib/doris_be
9# doris::FlushToken::_do_flush_memtable(doris::MemTable*, int, long*) in /opt/huawei/Bigdata/FusionInsight_Doris_8.6.0.1/install/FusionInsight-Doris-2.1.7/doris-be/lib/doris_be
10# doris::FlushToken::_flush_memtable(std::unique_ptr >, int, long) in /opt/huawei/Bigdata/FusionInsight_Doris_8.6.0.1/install/FusionInsight-Doris-2.1.7/doris-be/lib/doris_be
11# doris::MemtableFlushTask::run() in /opt/huawei/Bigdata/FusionInsight_Doris_8.6.0.1/install/FusionInsight-Doris-2.1.7/doris-be/lib/doris_be
12# doris::ThreadPool::dispatch_thread() in /opt/huawei/Bigdata/FusionInsight_Doris_8.6.0.1/install/FusionInsight-Doris-2.1.7/doris-be/lib/doris_be
13# doris::Thread::supervise_thread(void*) in /opt/huawei/Bigdata/FusionInsight_Doris_8.6.0.1/install/FusionInsight-Doris-2.1.7/doris-be/lib/doris_be
14# 0x00007FEF8368632A in /usr/lib64/libc.so.6
15# 0x00007FEF83708370 in /usr/lib64/libc.so.6
### What You Expected?
We expect result is that Key columns of type float or double cannot be added to the Agg table, and such operations should be strictly restricted.
The correct result should be:
### How to Reproduce?
_No response_
### Anything Else?
_No response_
### Are you willing to submit PR?
- [x] 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)
Contributor guide
Assessment
This issue has not been assessed yet.