-
Notifications
You must be signed in to change notification settings - Fork 841
feat: spill profile metrics #19075
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
feat: spill profile metrics #19075
Conversation
|
You have reached your Codex usage limits for code reviews. You can see your limits in the Codex usage dashboard. |
Docker Image for PR
|
dqhl76
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
|
@codex review |
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.
💡 Codex Review
Here are some automated review suggestions for this pull request.
ℹ️ About Codex in GitHub
Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you
- Open a pull request for review
- Mark a draft as ready
- Comment "@codex review".
If Codex has suggestions, it will comment; otherwise it will react with 👍.
Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".
Docker Image for PR
|
BenchTPCH-1000 window spill to remoteQuery Duration: 5m 1.6s window spill to local diskQuery Duration: 3m 51.7s |
Docker Image for PR
|
Docker Image for PR
|
I hereby agree to the terms of the CLA available at: https://docs.databend.com/dev/policies/cla/
Summary
This PR fixes spill metrics and makes local disk spill control more explicit.
Fix local vs remote spill metrics
is_local = trueincorrectly updatedRemoteSpill*metrics.is_local = trueupdatesLocalSpill*metrics; remote spill still updatesRemoteSpill*.Profile spill I/O by real storage target
SpillTargetderived fromStorageParams(Fs= local, others = remote).SpillTargetso metrics always reflect the actual spill location.Add per-operator local disk spill quotas
[spill]config fields andSpillConfigmembers:sort_spilling_disk_quota_ratiowindow_partition_spilling_disk_quota_ratioresult_set_spilling_disk_quota_ratioGlobalConfig::spill.*_spill_bytes_limit()converts these ratios into per-query byte limits from the global local-spill cap.*_spilling_to_disk_bytes_limit()settings.Prepare HTTP result-set local spill (kept off by default)
result_set_spilling_disk_quota_ratio, but keep its default at0because HTTP result-set spilling to local disk has a known bug.Spill config: disable implicit cache-disk local spill
[spill]does not explicitly configure a local spill path, local spill is now disabled (no more auto-fallback to data cache disk).[spill]+spill_local_disk_pathConfiguration Example
Tests
Type of change
This change is
This change is