[CodeRabbit review] upstream #10417: Limit memory usage of exchange sender (#10387) - #10
Conversation
Signed-off-by: ti-chi-bot <ti-community-prow-bot@tidb.io>
|
@coderabbitai review |
|
No actionable comments were generated in the recent review. 🎉 ℹ️ Recent review info⚙️ Run configurationConfiguration used: Path: .coderabbit.yaml Review profile: CHILL Plan: Team Run ID: 📒 Files selected for processing (20)
Included review availability: Your plan provides up to 1 included review per hour; 0 remain after this review. 📝 WalkthroughWalkthroughThe change adds byte-based buffering limits to response and MPP exchange writers. It propagates limits from executor settings, adds flush checks and tests, enables CodeRabbit review configuration, and increases KVStore test polling attempts. ChangesBuffered writer limits
Review configuration
KVStore test retry
Estimated code review effort: 4 (Complex) | ~45 minutes Merge Risk: ⚪ Minimal · up to This change adds bounded byte-based flushing for response and exchange writers, reducing buffering pressure while preserving row-based limits. The supplied coverage exercises the new limit behavior across writer types, and no merge-blocking risk is identified. Sequence Diagram(s)sequenceDiagram
participant PhysicalExchangeSender
participant newMPPExchangeWriter
participant ExchangeWriter
participant StorageStream
PhysicalExchangeSender->>newMPPExchangeWriter: pass concurrency-adjusted buffer limit
newMPPExchangeWriter->>ExchangeWriter: construct selected exchange writer
StorageStream->>ExchangeWriter: write block
ExchangeWriter->>ExchangeWriter: flush when row or byte limit is reached
🚥 Pre-merge checks | ✅ 3 | ❌ 2❌ Failed checks (2 warnings)
✅ Passed checks (3 passed)
Full details: Description checkExplanation The description explains that this is a review-only mirror and provides repository-specific handling instructions, but it omits the required problem summary, changes and implementation details, checklist, side effects, documentation, and release note sections from the template. Resolution Add the required template sections. Include the problem summary and issue number, describe the implementation changes, mark the applicable test and side-effect checklist items, document user or compatibility impacts, and provide the required release note entry. Full details: Docstring CoverageExplanation Docstring coverage is 4.76% which is insufficient. The required threshold is 80.00%. Docstring coverage is scoped to functions touched by this diff. Analyzed 42 functions across 19 files. (1 skipped: 1 unsupported.)
✨ Finishing Touches 💡 1📝 Generate docstrings 💡
🧪 Generate unit tests (beta)
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
|
|
@coderabbitai full review |
✅ Action performedFull review finished. |
Review-only mirror of upstream PR pingcap#10417: pingcap#10417
The source and base branches are immutable review-only mirrors of the exact upstream head and base commits. Do not merge, close, modify, delete, force-push, or rebase this PR or its branches. The shared .coderabbit.yaml is review-enabling metadata only and is not an upstream code change.
Summary by CodeRabbit
Performance
Reliability
Tests