Add indexing throttle on merge pressure for DataFormatAwareEngine#22243
Add indexing throttle on merge pressure for DataFormatAwareEngine#22243Shailesh-Kumar-Singh wants to merge 2 commits into
Conversation
When outstanding merges (active + pending) exceed maxMergeCount, the MergeScheduler now activates indexing throttle via the engine's existing IndexingThrottler, serializing write threads to a single thread until merge pressure subsides. This mirrors the behavior already present in InternalEngine's EngineMergeScheduler. Signed-off-by: Shailesh-Kumar-Singh <shaileshkumarsingh260@gmail.com>
PR Reviewer Guide 🔍(Review updated until commit 56d3574)Here are some key observations to aid the review process:
|
PR Code Suggestions ✨Latest suggestions up to 56d3574
Previous suggestionsSuggestions up to commit 0eee974
|
|
❌ Gradle check result for 0eee974: FAILURE Please examine the workflow log, locate, and copy-paste the failure(s) below, then iterate to green. Is the failure a flaky test unrelated to your change? |
Roll back isThrottling flag in catch blocks so the next evaluateThrottle() call retries the transition instead of leaving the flag permanently inconsistent with the actual throttle state. Signed-off-by: Shailesh-Kumar-Singh <shaileshkumarsingh260@gmail.com>
|
Persistent review updated to latest commit 56d3574 |
|
❌ Gradle check result for 56d3574: FAILURE Please examine the workflow log, locate, and copy-paste the failure(s) below, then iterate to green. Is the failure a flaky test unrelated to your change? |
When outstanding merges (active + pending) exceed maxMergeCount, the MergeScheduler now activates indexing throttle via the engine's existing IndexingThrottler, serializing write threads to a single thread until merge pressure subsides. This mirrors the behavior already present in InternalEngine's EngineMergeScheduler.
Description
[Describe what this change achieves]
Related Issues
Resolves #[Issue number to be closed when this PR is merged]
Check List
By submitting this pull request, I confirm that my contribution is made under the terms of the Apache 2.0 license.
For more information on following Developer Certificate of Origin and signing off your commits, please check here.