-
Notifications
You must be signed in to change notification settings - Fork 3.7k
[Bug] be core dump when using right join with other join predicates. #13509
Copy link
Copy link
Closed
Description
Search before asking
- I had searched in the issues and found no similar issues.
Version
master
What's Wrong?
be core dump when using right join with other join predicates.
*** Query id: 59d97a32c9c94ba3-a9e0e4de1785c817 ***
*** Aborted at 1666266920 (unix time) try "date -d @1666266920" if you are using GNU date ***
*** Current BE git commitID: 410e36ef5 ***
*** SIGABRT unkown detail explain (@0x2070000e73e) received by PID 59198 (TID 0x7f9a6e1ff700) from PID 59198; stack trace: ***
0# doris::signal::(anonymous namespace)::FailureSignalHandler(int, siginfo_t*, void*) at /home/disk3/lzl/icode/baidu/bdg/doris/core/be/src/common/signal_handler.h:420
1# 0x00007F9B4C694920 in /lib64/libc.so.6
2# __GI_raise in /lib64/libc.so.6
3# abort in /lib64/libc.so.6
4# 0x0000563C8D07C109 in /home/disk3/lzl/test/doris/be/lib/doris_be
5# 0x0000563C8D07171D in /home/disk3/lzl/test/doris/be/lib/doris_be
6# google::LogMessage::SendToLog() in /home/disk3/lzl/test/doris/be/lib/doris_be
7# google::LogMessage::Flush() in /home/disk3/lzl/test/doris/be/lib/doris_be
8# google::LogMessageFatal::~LogMessageFatal() in /home/disk3/lzl/test/doris/be/lib/doris_be
9# doris::Status doris::vectorized::ProcessHashTableProbe<std::integral_constant<doris::TJoinOp::type, (doris::TJoinOp::type)3>, true>::do_process_with_other_join_conjunts<doris::vectorized::FixedKeyHash
TableContext<unsigned long, true> >(doris::vectorized::FixedKeyHashTableContext<unsigned long, true>&, doris::vectorized::PODArray<unsigned char, 4096ul, Allocator<false, false>, 15ul, 16ul> const*, doris
::vectorized::MutableBlock&, doris::vectorized::Block*, unsigned long) at /home/disk3/lzl/icode/baidu/bdg/doris/core/be/src/vec/exec/join/vhash_join_node.cpp:671
10# auto doris::vectorized::HashJoinNode::get_next(doris::RuntimeState*, doris::vectorized::Block*, bool*)::{lambda(auto:1&&, auto:2&&, auto:3)#2}::operator()<doris::vectorized::FixedKeyHashTableContext<u
nsigned long, true>&, doris::vectorized::ProcessHashTableProbe<std::integral_constant<doris::TJoinOp::type, (doris::TJoinOp::type)3>, true>&, std::integral_constant<bool, true> >(doris::vectorized::FixedK
eyHashTableContext<unsigned long, true>&, doris::vectorized::ProcessHashTableProbe<std::integral_constant<doris::TJoinOp::type, (doris::TJoinOp::type)3>, true>&, std::integral_constant<bool, true>) const
at /home/disk3/lzl/icode/baidu/bdg/doris/core/be/src/vec/exec/join/vhash_join_node.cpp:1038
11# void std::__invoke_impl<void, doris::vectorized::HashJoinNode::get_next(doris::RuntimeState*, doris::vectorized::Block*, bool*)::{lambda(auto:1&&, auto:2&&, auto:3)#2}, doris::vectorized::FixedKeyHash
TableContext<unsigned long, true>&, doris::vectorized::ProcessHashTableProbe<std::integral_constant<doris::TJoinOp::type, (doris::TJoinOp::type)3>, true>&, std::integral_constant<bool, true> >(std::__invo
ke_other, doris::vectorized::HashJoinNode::get_next(doris::RuntimeState*, doris::vectorized::Block*, bool*)::{lambda(auto:1&&, auto:2&&, auto:3)#2}&&, doris::vectorized::FixedKeyHashTableContext<unsigned
long, true>&, doris::vectorized::ProcessHashTableProbe<std::integral_constant<doris::TJoinOp::type, (doris::TJoinOp::type)3>, true>&, std::integral_constant<bool, true>&&) at /home/disk3/lzl/icode/baidu/b
dg/doris/palo-toolchain/ldb_toolchain/include/c++/11/bits/invoke.h:61
12# std::__invoke_result<doris::vectorized::HashJoinNode::get_next(doris::RuntimeState*, doris::vectorized::Block*, bool*)::{lambda(auto:1&&, auto:2&&, auto:3)#2}, doris::vectorized::FixedKeyHashTableCont
ext<unsigned long, true>&, doris::vectorized::ProcessHashTableProbe<std::integral_constant<doris::TJoinOp::type, (doris::TJoinOp::type)3>, true>&, std::integral_constant<bool, true> >::type std::__invoke<
doris::vectorized::HashJoinNode::get_next(doris::RuntimeState*, doris::vectorized::Block*, bool*)::{lambda(auto:1&&, auto:2&&, auto:3)#2}, doris::vectorized::FixedKeyHashTableContext<unsigned long, true>&
, doris::vectorized::ProcessHashTableProbe<std::integral_constant<doris::TJoinOp::type, (doris::TJoinOp::type)3>, true>&, std::integral_constant<bool, true> >(doris::vectorized::HashJoinNode::get_next(dor
is::RuntimeState*, doris::vectorized::Block*, bool*)::{lambda(auto:1&&, auto:2&&, auto:3)#2}&&, doris::vectorized::FixedKeyHashTableContext<unsigned long, true>&, doris::vectorized::ProcessHashTableProbe<
std::integral_constant<doris::TJoinOp::type, (doris::TJoinOp::type)3>, true>&, std::integral_constant<bool, true>&&) at /home/disk3/lzl/icode/baidu/bdg/doris/palo-toolchain/ldb_toolchain/include/c++/11/bi
ts/invoke.h:97
What You Expected?
as expected
How to Reproduce?
CREATE TABLE `test` (
`k1` tinyint(4) NULL,
`k2` smallint(6) NULL,
`k3` int(11) NULL,
`k4` bigint(20) NULL,
`k5` decimal(9, 3) NULL,
`k6` char(5) NULL,
`k10` date NULL,
`k11` datetime NULL,
`k7` varchar(20) NULL,
`k8` double MAX NULL,
`k9` float SUM NULL
) ENGINE=OLAP
AGGREGATE KEY(`k1`, `k2`, `k3`, `k4`, `k5`, `k6`, `k10`, `k11`, `k7`)
COMMENT 'OLAP'
DISTRIBUTED BY HASH(`k1`) BUCKETS 5
PROPERTIES (
"replication_allocation" = "tag.location.default: 1",
"in_memory" = "false",
"storage_format" = "V2",
"disable_auto_compaction" = "false"
);
CREATE TABLE `baseall` (
`k1` tinyint(4) NULL,
`k2` smallint(6) NULL,
`k3` int(11) NULL,
`k4` bigint(20) NULL,
`k5` decimal(9, 3) NULL,
`k6` char(5) NULL,
`k10` date NULL,
`k11` datetime NULL,
`k7` varchar(20) NULL,
`k8` double MAX NULL,
`k9` float SUM NULL
) ENGINE=OLAP
AGGREGATE KEY(`k1`, `k2`, `k3`, `k4`, `k5`, `k6`, `k10`, `k11`, `k7`)
COMMENT 'OLAP'
DISTRIBUTED BY HASH(`k1`) BUCKETS 5
PROPERTIES (
"replication_allocation" = "tag.location.default: 1",
"in_memory" = "false",
"storage_format" = "V2",
"disable_auto_compaction" = "false"
);
insert into test(k1) values(1);
insert into baseall(k1) values(2);
select a.k1, b.k1, c.k1 from test a left join test b on a.k1 = b.k1 right join baseall c on b.k1 = c.k1 and 2=4;
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
Reactions are currently unavailable
Metadata
Metadata
Assignees
Labels
No labels