Disagg: refresh expiration time of snapshot when calling getSnapshot#9570
Disagg: refresh expiration time of snapshot when calling getSnapshot#9570ti-chi-bot[bot] merged 4 commits intopingcap:masterfrom
Conversation
| auto timeout_s = context.getSettingsRef().disagg_task_snapshot_timeout; | ||
| auto expired_at = Clock::now() + std::chrono::seconds(timeout_s); |
There was a problem hiding this comment.
disagg_task_snapshot_timeout can be smaller now?
There was a problem hiding this comment.
This depends on how long we expect a segment to be processed in the most extreme scenario.
Under normal circumstances, this expiration time has little impact because when the delta of the last segment is fetched, the snapshot will be immediately deleted (unregisterSnapshotIfEmpty).
[LGTM Timeline notifier]Timeline:
|
|
/hold |
Signed-off-by: Lloyd-Pottiger <yan1579196623@gmail.com>
|
/unhold |
|
[APPROVALNOTIFIER] This PR is APPROVED This pull-request has been approved by: CalvinNeo, JaySon-Huang, Lloyd-Pottiger The full list of commands accepted by this bot can be found here. The pull request process is described here DetailsNeeds approval from an approver in each of these files:
Approvers can indicate their approval by writing |
Signed-off-by: ti-chi-bot <ti-community-prow-bot@tidb.io>
|
In response to a cherrypick label: new pull request created to branch |
…ingcap#9570) close pingcap#9567 Signed-off-by: Lloyd-Pottiger <yan1579196623@gmail.com> Co-authored-by: Lloyd-Pottiger <60744015+Lloyd-Pottiger@users.noreply.github.com> Co-authored-by: Lloyd-Pottiger <yan1579196623@gmail.com>
What problem does this PR solve?
Issue Number: close #9567
Problem Summary:
After v7.5, TiFlash use read thread pool to read segments in disagg-mode and the segment will fetch pages only when it is going to be read.
If the query is slow, there is a high probability that the snapshot will expire before the query ends.
What is changed and how it works?
Refreshing the expiration time of snapshot when calling
getSnapshot.Check List
Tests
Side effects
Documentation
Release note