Skip to content

branch-4.0: [fix](cloud) Skip wait for async rowset warmup - #63877

Merged
morningman merged 1 commit into
apache:branch-4.0from
bobhan1:branch-4.0-pick-24cb2f77-skip-async-rowset-warmup-wait
Jun 10, 2026
Merged

branch-4.0: [fix](cloud) Skip wait for async rowset warmup#63877
morningman merged 1 commit into
apache:branch-4.0from
bobhan1:branch-4.0-pick-24cb2f77-skip-async-rowset-warmup-wait

Conversation

@bobhan1

@bobhan1bobhan1 commented May 29, 2026

Copy link
Copy Markdown
Contributor

Proposed changes

pick #62764
Backport upstream commit 24cb2f77cb248e0fd6c5329136c4a0fce3c52bd4 to branch-4.0.

This changes CloudWarmUpManager::warm_up_rowset so non-positive sync_wait_timeout_ms submits async rowset warmup work and returns immediately, while copying the rowset meta for the background task. Positive timeout waits now use an explicit finished flag to avoid returning on spurious wakeups.

The new unit test was adapted for the 4.0 include layout.

Root cause

Async rowset warmup still waited on a condition variable even when sync_wait_timeout_ms was non-positive.

Testing

git diff HEAD^ --check
./run-be-ut.sh --run --filter=CloudWarmUpManagerTest.* -j100

Problem Summary: CloudWarmUpManager::warm_up_rowset still waited on a bthread condition variable when sync_wait_timeout_ms was non-positive. Submit those warmup tasks asynchronously and return immediately, while keeping the rowset meta alive for the background task and logging if rowset meta initialization fails.
Release note: None
@hello-stephen

Copy link
Copy Markdown
Contributor

Thank you for your contribution to Apache Doris.
Don't know what should be done next? See How to process your PR.

Please clearly describe your PR:

  1. What problem was fixed (it's best to include specific error reporting information). How it was fixed.
  2. Which behaviors were modified. What was the previous behavior, what is it now, why was it modified, and what possible impacts might there be.
  3. What features were added. Why was this function added?
  4. Which code was refactored and why was this part of the code refactored?
  5. Which functions were optimized and what is the difference before and after the optimization?

@bobhan1
bobhan1 marked this pull request as ready for review May 29, 2026 02:57
@bobhan1

Copy link
Copy Markdown
ContributorAuthor

run buildall

@bobhan1bobhan1 changed the title [fix](cloud) Skip wait for async rowset warmupbranch-4.0: [fix](cloud) Skip wait for async rowset warmupMay 29, 2026
@hello-stephen

Copy link
Copy Markdown
Contributor

BE UT Coverage Report

Increment line coverage 89.29% (25/28) 🎉

Increment coverage report
Complete coverage report

CategoryCoverage
Function Coverage53.25% (19418/36467)
Line Coverage36.37% (181336/498536)
Region Coverage32.97% (140825/427183)
Branch Coverage33.85% (60958/180096)

@hello-stephen

Copy link
Copy Markdown
Contributor

BE Regression && UT Coverage Report

Increment line coverage 89.29% (25/28) 🎉

Increment coverage report
Complete coverage report

CategoryCoverage
Function Coverage71.50% (25524/35700)
Line Coverage54.37% (270556/497654)
Region Coverage51.78% (223437/431503)
Branch Coverage53.28% (96291/180729)

@morningman
morningman merged commit 98ec155 into apache:branch-4.0Jun 10, 2026
33 of 36 checks passed
@morningmanmorningman mentioned this pull request Jul 9, 2026
Sign up for freeto join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants

@bobhan1@hello-stephen@morningman