Uh oh!
There was an error while loading. Please reload this page.
branch-4.1: [fix](load)fix VNodeChannel close_wait hang - #65241
Conversation
During streamload execution, close_wait waits for either add_batches_finished or cancel. When writing to a single replica, encountering a slave node=nullptr condition causes an early return. If no RPC callback is set and no cancel occurs at this point, close_wait becomes deadlock.
hello-stephen
commented
Jul 6, 2026
Thank you for your contribution to Apache Doris. Please clearly describe your PR:
|
There was a problem hiding this comment.
Pull request overview
This PR backports a fix to prevent stream load from hanging in close_wait() when VNodeChannel::try_send_pending_block() hits certain early-return error paths (e.g., missing slave node or DNS resolve failure), and adds a regression test to catch the hang.
Changes:
- Add a regression test that enables a BE debug point to simulate “slave node not found” and ensures the load does not hang.
- In
VNodeChannel::try_send_pending_block(), callcancel()and_send_block_callback->clear_in_flight()before returning when a slave node is missing. - Also
cancel()(and clear in-flight) when hostname-to-IP resolution fails for the BRPC HTTP path.
Reviewed changes
Copilot reviewed 2 out of 2 changed files in this pull request and generated 6 comments.
| File | Description |
|---|---|
| regression-test/suites/load_p0/test_stream_load_close_wait_hang.groovy | New regression to detect stream-load close_wait() hang under a debug-injected error path. |
| be/src/exec/sink/writer/vtablet_writer.cpp | Fixes early-return paths to cancel and clear in-flight RPC state to avoid hangs; adds a debug point for reproduction. |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
liaoxin01
commented
Jul 6, 2026
run buildall |
hello-stephen
commented
Jul 6, 2026
BE UT Coverage ReportIncrement line coverage Increment coverage report
|
hello-stephen
commented
Jul 6, 2026
BE Regression && UT Coverage ReportIncrement line coverage Increment coverage report
|
yiguolei
commented
Jul 7, 2026
skip buildall |
PR approved by at least one committer and no changes requested. |
PR approved by anyone and no changes requested. |
Uh oh!
There was an error while loading. Please reload this page.
Pick #58024