-
Notifications
You must be signed in to change notification settings - Fork 3.7k
[fix](core) Fix core caused by VDataStreamMgr::transmit_block #50560
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
|
Thank you for your contribution to Apache Doris. Please clearly describe your PR:
|
|
run buildall |
TPC-H: Total hot run time: 33877 ms |
TPC-DS: Total hot run time: 185481 ms |
ClickBench: Total hot run time: 29.52 s |
|
run buildall |
TPC-H: Total hot run time: 34029 ms |
TPC-DS: Total hot run time: 193449 ms |
ClickBench: Total hot run time: 29.58 s |
BE UT Coverage ReportIncrement line coverage Increment coverage report
|
BE Regression && UT Coverage ReportIncrement line coverage Increment coverage report
|
HappenLee
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM
|
PR approved by at least one committer and no changes requested. |
|
PR approved by anyone and no changes requested. |
…#50560) ### What problem does this PR solve? apache#50113 transmit_block should be marked as done when transmitting the last block. Otherwise, the previous block might reach a memory limit and set done to null. ``` F20250430 11:49:29.413803 2176884 vdata_stream_recvr.cpp:200] Check failed: *done != nullptr *** Check failure stack trace: *** @ 0x558196be1956 google::LogMessage::SendToLog() @ 0x558196bde3a0 google::LogMessage::Flush() @ 0x558196be2199 google::LogMessageFatal::~LogMessageFatal() @ 0x558193b1659c doris::vectorized::VDataStreamRecvr::SenderQueue::add_block() @ 0x558193b1f7b5 doris::vectorized::VDataStreamRecvr::add_block() @ 0x558193af6cf8 doris::vectorized::VDataStreamMgr::transmit_block() @ 0x558157f7a685 doris::pipeline::DataStreamRecvrTest_transmit_block_Test::TestBody() @ 0x5581973c8c0b testing::internal::HandleSehExceptionsInMethodIfSupported<>() @ 0x5581973c2a69 testing::internal::HandleExceptionsInMethodIfSupported<>() @ 0x55819739943a testing::Test::Run() @ 0x558197399e5e testing::TestInfo::Run() @ 0x55819739a71e testing::TestSuite::Run() @ 0x5581973a9dde testing::internal::UnitTestImpl::RunAllTests() @ 0x5581973c9a56 testing::internal::HandleSehExceptionsInMethodIfSupported<>() @ 0x5581973c3a61 testing::internal::HandleExceptionsInMethodIfSupported<>() @ 0x5581973a85d3 testing::UnitTest::Run() @ 0x5581593d8653 RUN_ALL_TESTS() ``` ### Release note None ### Check List (For Author) - Test <!-- At least one of them must be included. --> - [ ] Regression test - [x] Unit Test - [ ] Manual test (add detailed scripts or steps below) - [ ] No need to test or manual test. Explain why: - [ ] This is a refactor/code format and no logic has been changed. - [ ] Previous test can cover this change. - [ ] No code files have been changed. - [ ] Other reason <!-- Add your reason? --> - Behavior changed: - [x] No. - [ ] Yes. <!-- Explain the behavior change --> - Does this need documentation? - [x] No. - [ ] Yes. <!-- Add document PR link here. eg: apache/doris-website#1214 --> ### Check List (For Reviewer who merge this PR) - [ ] Confirm the release note - [ ] Confirm test cases - [ ] Confirm document - [ ] Add branch pick label <!-- Add branch pick label that this PR should merge into -->
What problem does this PR solve?
#50113
transmit_block should be marked as done when transmitting the last block.
Otherwise, the previous block might reach a memory limit and set done to null.
Release note
None
Check List (For Author)
Test
Behavior changed:
Does this need documentation?
Check List (For Reviewer who merge this PR)