Skip to content

br: set scan region limiter - #66822

Merged
ti-chi-bot[bot] merged 6 commits into
pingcap:masterfrom
Leavrth:scan_region_limiter
Mar 19, 2026
Merged

ti-chi-bot[bot] merged 6 commits into
pingcap:masterfrom
Leavrth:scan_region_limiter

Conversation

@Leavrth

@Leavrth Leavrth commented Mar 9, 2026 •

Copy link
Copy Markdown
Contributor

What problem does this PR solve?

Issue Number: close #66821

Problem Summary:
When there are many scan region requests sent to PD, PD will be stuck.

What changed and how does it work?

set region scan limiter to avoid too many scan region requests sent to PD at the same time.

Check List

Tests

  • Unit test
  • Integration test
  • Manual test (add detailed scripts or steps below)
  • No need to test
    • I checked and no code files have been changed.

Side effects

  • Performance regression: Consumes more CPU
  • Performance regression: Consumes more Memory
  • Breaking backward compatibility

Documentation

  • Affects user behaviors
  • Contains syntax changes
  • Contains variable changes
  • Contains experimental features
  • Changes MySQL compatibility

Release note

Please refer to Release Notes Language Style Guide to write a quality release note.

Introduce a new parameter `--region-scan-concurrency` to limit the number of scan region requests sent to PD at the same time.

Summary by CodeRabbit

  • New Features

    • Added region-scan-concurrency flag/config and exposed client setters/getters to control PD region-scan concurrency during restore; propagated into restore/log clients and importer.
  • Performance / Flow Control

    • Implemented per-store PD scan request throttling (token pool) to limit concurrent region pagination.
  • Bug Fixes

    • Worker token channel size now clamps to sane defaults with warnings to avoid zero/oversized channels.
  • Tests

    • Added tests validating PD scan request flow control under contention; increased test verbosity in one script.

Signed-off-by: Jianjun Liao <jianjun.liao@outlook.com>
@ti-chi-bot ti-chi-bot Bot added do-not-merge/needs-tests-checked release-note Denotes a PR that will be considered when it comes time to generate release notes. labels Mar 9, 2026
@pantheon-ai

pantheon-ai Bot commented Mar 9, 2026 •

Copy link
Copy Markdown

Review Complete

Findings: 2 issues
Posted: 3
Duplicates/Skipped: 0

ℹ️ Learn more details on Pantheon AI.

@ti-chi-bot ti-chi-bot Bot added size/L Denotes a PR that changes 100-499 lines, ignoring generated files. and removed do-not-merge/needs-tests-checked labels Mar 9, 2026
@tiprow

tiprow Bot commented Mar 9, 2026

Copy link
Copy Markdown

Hi @Leavrth. Thanks for your PR.

PRs from untrusted users cannot be marked as trusted with /ok-to-test in this repo meaning untrusted PR authors can never trigger tests themselves. Collaborators can still trigger tests on the PR using /test all.

I understand the commands that are listed here.

Details

Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the kubernetes-sigs/prow repository.

@coderabbitai

coderabbitai Bot commented Mar 9, 2026 •

Copy link
Copy Markdown

Note

Reviews paused

It looks like this branch is under active development. To avoid overwhelming you with review comments due to an influx of new commits, CodeRabbit has automatically paused this review. You can configure this behavior by changing the reviews.auto_review.auto_pause_after_reviewed_commits setting.

Use the following commands to manage reviews:

  • @coderabbitai resume to resume automatic reviews.
  • @coderabbitai review to trigger a single review.

Use the checkboxes below for quick actions:

  • ▶️ Resume reviews
  • 🔍 Trigger review

No actionable comments were generated in the recent review. 🎉

ℹ️ Recent review info
⚙️ Run configuration

Configuration used: Repository UI

Review profile: CHILL

Plan: Pro

Run ID: ab957b75-b8ed-4784-9f1a-81c398ac2fea

📥 Commits

Reviewing files that changed from the base of the PR and between efd2f33 and 47a55e0.

📒 Files selected for processing (1)
  • br/pkg/task/config_test.go
🚧 Files skipped from review as they are similar to previous changes (1)
  • br/pkg/task/config_test.go

📝 Walkthrough

Walkthrough

Adds a region-scan-concurrency knob, wires it through RestoreConfig, Restore/Log clients and SnapClient, implements token-based throttling in SnapFileImporter for PD PaginateScanRegion requests, updates tests, worker token utility bounds, and a BUILD test shard/dependency tweak.

Changes

Cohort / File(s) Summary
Restore config & client wiring
br/pkg/task/restore.go, br/pkg/task/config_test.go, br/pkg/task/stream.go
Add region-scan-concurrency flag and RestoreConfig.RegionScanConcurrency; defaulting and flag parsing updated; propagate to clients via SetRegionScanConcurrency. Tests updated.
Log client wiring
br/pkg/restore/log_client/client.go
Add regionScanConcurrency field and SetRegionScanConcurrency on LogClient; pass value into SnapFileImporter options during InitClients.
Snap client surface & accessors
br/pkg/restore/snap_client/client.go, br/pkg/restore/snap_client/export_test.go
Add regionScanConcurrency on SnapClient with SetRegionScanConcurrency/GetRegionScanConcurrency; test helpers updated to pass concurrency into SnapFileImporter options and expose test paginate helper.
PD scan throttling implementation
br/pkg/restore/snap_client/import.go, br/pkg/restore/snap_client/import_test.go
Add scanConcurrency option and pdReqTokens chan struct{} on SnapFileImporter; add acquirePDReqToken, releasePDReqToken, and paginateScanRegion to gate split.PaginateScanRegion calls. Replace direct pagination calls with token-guarded wrapper. Add flow-control test exercising concurrency.
Worker token utilities
br/pkg/utils/worker.go
Add DefaultWorkerTokenChannelSize and MaxWorkerTokenChannelSize; clamp invalid sizes with warnings; create and prefill token channel and return it.
Build changes
br/pkg/restore/snap_client/BUILD.bazel
Increment shard_count for go_test targets and add @com_github_tikv_pd_client//opt to deps.
Misc tests & scripts
br/pkg/restore/snap_client/export_test.go, br/pkg/restore/snap_client/import_test.go, br/pkg/task/common_test.go, br/tests/br_pitr_table_filter/run.sh
Add/adjust test helpers, add PD flow-control test, update default RestoreConfig literal for new field, and increase test script verbosity.

Sequence Diagram

sequenceDiagram
    participant User as CLI/User
    participant RestoreCfg as RestoreConfig
    participant SnapClient as SnapClient
    participant Importer as SnapFileImporter
    participant TokenCh as Token Channel
    participant PD as PD (SplitClient)

    User->>RestoreCfg: set region-scan-concurrency
    RestoreCfg->>SnapClient: SetRegionScanConcurrency(value)
    SnapClient->>Importer: NewSnapFileImporterOptions(..., scanConcurrency)
    Importer->>TokenCh: BuildWorkerTokenChannel(scanConcurrency)

    Note over Importer,TokenCh: During Import...
    Importer->>Importer: paginateScanRegion()
    Importer->>TokenCh: acquirePDReqToken()
    TokenCh-->>Importer: token (or wait)
    Importer->>PD: PaginateScanRegion(ctx,startKey,endKey)
    PD-->>Importer: RegionInfo results
    Importer->>TokenCh: releasePDReqToken()
    TokenCh-->>Importer: token released
Loading

Estimated code review effort

🎯 3 (Moderate) | ⏱️ ~22 minutes

Possibly related PRs

Suggested labels

size/M

Suggested reviewers

  • RidRisR
  • YuJuncen

Poem

🐰 I nibble tokens one by one,
Hopping till the scans are done,
Tokens guard the PD's gate,
Concurrency keeps things straight,
Restore hops home beneath the sun.

🚥 Pre-merge checks | ✅ 2 | ❌ 3

❌ Failed checks (2 warnings, 1 inconclusive)

Check name Status Explanation Resolution
Linked Issues check ⚠️ Warning The PR fails to properly implement the default value guard for RegionScanConcurrency in the Adjust() function, causing TestRestoreConfigAdjust to fail and leaving the field at 0 (unlimited) instead of the intended default of 256. Add a default-value guard in RestoreConfig.Adjust() following the pattern: if cfg.RegionScanConcurrency == 0 { cfg.RegionScanConcurrency = defaultRegionScanConcurrency } to match the implementation of other config fields.
Docstring Coverage ⚠️ Warning Docstring coverage is 17.65% which is insufficient. The required threshold is 80.00%. Write docstrings for the functions missing them to satisfy the coverage threshold.
Out of Scope Changes check ❓ Inconclusive While most changes align with the stated objective of limiting scan region concurrency, the modification to br/tests/br_pitr_table_filter/run.sh (adding -vvv flag) appears tangential to the core feature and lacks clear justification in the PR context. Clarify whether the -vvv flag addition to the test script is intentional or accidental, and if intentional, explain its relationship to the region scan limiter feature.
✅ Passed checks (2 passed)
Check name Status Explanation
Title check ✅ Passed The title 'br: set scan region limiter' clearly and concisely describes the main change - adding a region scan limiter to the backup/restore (br) package to address the PD performance issue.
Description check ✅ Passed The PR description adequately follows the template with clear problem statement (PD stuck from many scan requests), solution explanation (region scan limiter), tests checked, and a relevant release note.

✏️ Tip: You can configure your own custom pre-merge checks in the settings.

✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests
📝 Coding Plan
  • Generate coding plan for human review comments

Warning

There were issues while running some tools. Please review the errors and either fix the tool's configuration or disable the tool if it's a critical failure.

🔧 golangci-lint (2.11.3)

Command failed


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.

❤️ Share

Comment @coderabbitai help to get the list of available commands and usage tips.

@hawkingrei

Copy link
Copy Markdown
Contributor

/ok-to-test

@ti-chi-bot ti-chi-bot Bot added the ok-to-test Indicates a PR is ready to be tested. label Mar 9, 2026

@coderabbitai coderabbitai Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 2

🤖 Prompt for all review comments with AI agents
Verify each finding against the current code and only fix it if needed.

Inline comments:
In `@br/pkg/restore/snap_client/import_test.go`:
- Around line 224-245: The test currently performs testify/require assertions
inside the mock ScanRegions and worker goroutines (see
flowControlSplitClient.ScanRegions, its inFlight/maxFlight use, and the worker
closure), which can call FailNow in a goroutine and not stop the main test;
instead, make ScanRegions block briefly (use a channel handoff) to actually
create concurrent in-flight calls, record any violations (e.g., cur > maxFlight)
to a thread-safe counter or slice using atomic ops or a mutex, and remove all
require/require.LessOrEqual calls from goroutines; after wg.Wait() in the main
test goroutine, assert once using require on the collected violations to ensure
failures are observed reliably.

In `@br/pkg/task/restore.go`:
- Around line 480-483: The code currently allows an explicit
--region-scan-concurrency=0 to be silently overwritten by Adjust(), so update
the flag handling after reading cfg.RegionScanConcurrency to detect whether the
flag was explicitly set: use flags.Changed(FlagRegionScanConcurrency) and if it
is true and cfg.RegionScanConcurrency == 0 return a clear invalid-argument error
(annotate with the flag name, e.g., in the same style as existing returns)
instead of letting Adjust() replace it; apply the same check where
cfg.RegionScanConcurrency is read at the later occurrence around the 613–615
region.

ℹ️ Review info
⚙️ Run configuration

Configuration used: Repository UI

Review profile: CHILL

Plan: Pro

Run ID: a999dd8e-df59-4a86-b9cf-bebc2362e309

📥 Commits

Reviewing files that changed from the base of the PR and between bcac449 and ab1601e.

📒 Files selected for processing (8)
  • br/pkg/restore/snap_client/BUILD.bazel
  • br/pkg/restore/snap_client/client.go
  • br/pkg/restore/snap_client/export_test.go
  • br/pkg/restore/snap_client/import.go
  • br/pkg/restore/snap_client/import_test.go
  • br/pkg/task/config_test.go
  • br/pkg/task/restore.go
  • br/pkg/utils/worker.go

Comment thread br/pkg/task/restore.go Resolved
Comment thread br/pkg/restore/snap_client/client.go Resolved
Comment thread br/pkg/task/restore.go Resolved
Comment thread br/pkg/utils/worker.go Resolved
Signed-off-by: Jianjun Liao <jianjun.liao@outlook.com>
@codecov

codecov Bot commented Mar 10, 2026 •

Copy link
Copy Markdown

Codecov Report

❌ Patch coverage is 73.07692% with 14 lines in your changes missing coverage. Please review.
✅ Project coverage is 79.0279%. Comparing base (7d77215) to head (47a55e0).
⚠️ Report is 87 commits behind head on master.

Additional details and impacted files
@@               Coverage Diff                @@
##             master     #66822        +/-   ##
================================================
+ Coverage   77.6662%   79.0279%   +1.3616%     
================================================
  Files          2008       1954        -54     
  Lines        549877     552863      +2986     
================================================
+ Hits         427069     436916      +9847     
+ Misses       121100     114882      -6218     
+ Partials       1708       1065       -643     
Flag Coverage Δ
integration 45.0701% <63.2653%> (-3.1173%) ⬇️
unit 77.0104% <63.4615%> (+0.7719%) ⬆️

Flags with carried forward coverage won't be shown. Click here to find out more.

Components Coverage Δ
dumpling 57.0098% <ø> (+0.2124%) ⬆️
parser ∅ <ø> (∅)
br 65.2715% <73.0769%> (+4.3950%) ⬆️
🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.
  • 📦 JS Bundle Analysis: Save yourself from yourself by tracking and limiting bundle sizes in JS merges.

Leavrth added 2 commits March 12, 2026 10:12
Signed-off-by: Jianjun Liao <jianjun.liao@outlook.com>
Signed-off-by: Jianjun Liao <jianjun.liao@outlook.com>

@coderabbitai coderabbitai Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 1

🧹 Nitpick comments (1)
br/pkg/utils/worker.go (1)

13-16: Add doc comments to the new exported limits.

These are new exported symbols, and the 30M cap is a non-obvious operational constraint that should be documented at the declaration.

Possible patch
 const (
+	// DefaultWorkerTokenChannelSize is the fallback token-pool size when callers
+	// request a worker channel but pass 0.
 	DefaultWorkerTokenChannelSize = 128
+	// MaxWorkerTokenChannelSize caps caller-provided token-pool sizes to avoid
+	// pathological channel capacities and startup cost.
 	MaxWorkerTokenChannelSize     = 30 * 1024 * 1024 // 30M
 )

As per coding guidelines, "Keep exported-symbol doc comments, and prefer semantic constraints over name restatement" and "Comments SHOULD explain non-obvious intent, constraints, invariants, concurrency guarantees, SQL/compatibility contracts, or important performance trade-offs".

🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.

In `@br/pkg/utils/worker.go` around lines 13 - 16, Add clear exported doc comments
for DefaultWorkerTokenChannelSize and MaxWorkerTokenChannelSize: describe what
each constant controls (the default and maximum size of the worker token
channel), the units (number of tokens), the reason/operational constraint behind
the 30M cap (memory/GC/throughput trade-off and why larger values are unsafe),
any concurrency or performance implications, and guidance for when it is safe to
change the limit; attach these comments immediately above the constant
declarations for DefaultWorkerTokenChannelSize and MaxWorkerTokenChannelSize.
🤖 Prompt for all review comments with AI agents
Verify each finding against the current code and only fix it if needed.

Inline comments:
In `@br/pkg/task/restore.go`:
- Around line 262-267: RegionScanConcurrency is a plain uint so zero cannot
distinguish “unset” vs deliberate 0=unlimited, allowing zero-value configs to
bypass throttling; modify the config handling so RegionScanConcurrency has an
explicit unset sentinel (e.g. pointer *uint or use a boolean flag) and update
Adjust() to set the CLI default (256) only when unset, then ensure
configureRestoreClient and br/pkg/restore/snap_client/import.go check the
sentinel rather than raw 0 before deciding to create the pdReqTokens channel;
update any other uses (e.g., referenced lines ~480 and ~753) to respect the new
unset vs zero semantics.

---

Nitpick comments:
In `@br/pkg/utils/worker.go`:
- Around line 13-16: Add clear exported doc comments for
DefaultWorkerTokenChannelSize and MaxWorkerTokenChannelSize: describe what each
constant controls (the default and maximum size of the worker token channel),
the units (number of tokens), the reason/operational constraint behind the 30M
cap (memory/GC/throughput trade-off and why larger values are unsafe), any
concurrency or performance implications, and guidance for when it is safe to
change the limit; attach these comments immediately above the constant
declarations for DefaultWorkerTokenChannelSize and MaxWorkerTokenChannelSize.

ℹ️ Review info
⚙️ Run configuration

Configuration used: Repository UI

Review profile: CHILL

Plan: Pro

Run ID: 18339ac4-42fe-472a-9f0c-6e44a616ea8a

📥 Commits

Reviewing files that changed from the base of the PR and between 0b6bea5 and d863cd9.

📒 Files selected for processing (3)
  • br/pkg/restore/snap_client/import.go
  • br/pkg/task/restore.go
  • br/pkg/utils/worker.go

Comment thread br/pkg/task/restore.go Resolved
@ti-chi-bot ti-chi-bot Bot added needs-1-more-lgtm Indicates a PR needs 1 more LGTM. approved labels Mar 13, 2026
@Leavrth

Leavrth commented Mar 16, 2026

Copy link
Copy Markdown
Contributor Author

/retest

@ti-chi-bot

ti-chi-bot Bot commented Mar 16, 2026

Copy link
Copy Markdown

[APPROVALNOTIFIER] This PR is APPROVED

This pull-request has been approved by: RidRisR, YuJuncen

The full list of commands accepted by this bot can be found here.

The pull request process is described here

Details Needs approval from an approver in each of these files:

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment

@ti-chi-bot ti-chi-bot Bot added lgtm and removed needs-1-more-lgtm Indicates a PR needs 1 more LGTM. labels Mar 16, 2026
@ti-chi-bot

ti-chi-bot Bot commented Mar 16, 2026

Copy link
Copy Markdown

[LGTM Timeline notifier]

Timeline:

  • 2026-03-13 10:11:33.371770849 +0000 UTC m=+1350.372544316: ☑️ agreed by YuJuncen.
  • 2026-03-16 08:42:46.313138376 +0000 UTC m=+173693.400795923: ☑️ agreed by RidRisR.

@Leavrth

Leavrth commented Mar 16, 2026

Copy link
Copy Markdown
Contributor Author

/retest

Signed-off-by: Jianjun Liao <jianjun.liao@outlook.com>

@coderabbitai coderabbitai Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🧹 Nitpick comments (1)
br/tests/br_pitr_table_filter/run.sh (1)

333-333: Avoid always-on -vvv in this test flow.

Line 333 forces max SQL verbosity on every run, which can bloat CI logs and make failures harder to triage. Prefer opt-in verbosity via env flag.

♻️ Suggested adjustment
-    run_sql_file $CUR/sqls/log.sql -vvv
+    if [ "${BR_TEST_VERBOSE_SQL:-0}" = "1" ]; then
+        run_sql_file "$CUR/sqls/log.sql" -vvv
+    else
+        run_sql_file "$CUR/sqls/log.sql"
+    fi

As per coding guidelines, "Keep changes focused; avoid unrelated refactors, renames, or moves in the same PR".

🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.

In `@br/tests/br_pitr_table_filter/run.sh` at line 333, Replace the hard-coded
"-vvv" in the run_sql_file invocation so verbosity is opt-in: detect an
environment flag (e.g. VERBOSE_SQL) and only append "-vvv" to the run_sql_file
$CUR/sqls/log.sql call when that flag is set; update the call site that invokes
run_sql_file to conditionally include the verbosity flag rather than always
passing "-vvv" (reference the run_sql_file invocation and $CUR/sqls/log.sql).
🤖 Prompt for all review comments with AI agents
Verify each finding against the current code and only fix it if needed.

Nitpick comments:
In `@br/tests/br_pitr_table_filter/run.sh`:
- Line 333: Replace the hard-coded "-vvv" in the run_sql_file invocation so
verbosity is opt-in: detect an environment flag (e.g. VERBOSE_SQL) and only
append "-vvv" to the run_sql_file $CUR/sqls/log.sql call when that flag is set;
update the call site that invokes run_sql_file to conditionally include the
verbosity flag rather than always passing "-vvv" (reference the run_sql_file
invocation and $CUR/sqls/log.sql).

ℹ️ Review info
⚙️ Run configuration

Configuration used: Repository UI

Review profile: CHILL

Plan: Pro

Run ID: 8cb05b6e-224c-449c-9c9a-1003f2d6c613

📥 Commits

Reviewing files that changed from the base of the PR and between d863cd9 and efd2f33.

📒 Files selected for processing (2)
  • br/pkg/task/common_test.go
  • br/tests/br_pitr_table_filter/run.sh

@Leavrth

Leavrth commented Mar 16, 2026

Copy link
Copy Markdown
Contributor Author

/retest

4 similar comments
@Leavrth

Leavrth commented Mar 16, 2026

Copy link
Copy Markdown
Contributor Author

/retest

@Leavrth

Leavrth commented Mar 17, 2026

Copy link
Copy Markdown
Contributor Author

/retest

@Leavrth

Leavrth commented Mar 17, 2026

Copy link
Copy Markdown
Contributor Author

/retest

@Leavrth

Leavrth commented Mar 17, 2026

Copy link
Copy Markdown
Contributor Author

/retest

@RidRisR

RidRisR commented Mar 17, 2026

Copy link
Copy Markdown
Contributor

Code review

Found 1 issue:

  1. Adjust() missing default value guard for RegionScanConcurrency. Every other config field (PDConcurrency, StatsConcurrency, BatchFlushInterval, DdlBatchSize, CloudAPIConcurrency) has an if cfg.X == 0 { cfg.X = defaultX } guard in Adjust(), but RegionScanConcurrency does not. This means: (a) TestRestoreConfigAdjust will fail because it asserts cfg.RegionScanConcurrency == 256 after Adjust(), but the value stays 0; (b) TiDB SQL-triggered BR restores that go through Adjust() but not ParseFromFlags will get 0 (unlimited) instead of the intended default 256, bypassing the rate limiter entirely.

tidb/br/pkg/task/restore.go

Lines 464 to 490 in efd2f33

err = cfg.RestoreCommonConfig.ParseFromFlags(flags)
if err != nil {
return errors.Trace(err)
}
cfg.Concurrency, err = flags.GetUint32(flagConcurrency)
if err != nil {
return errors.Trace(err)
}
if cfg.Config.Concurrency == 0 {
cfg.Config.Concurrency = defaultRestoreConcurrency
}
cfg.PDConcurrency, err = flags.GetUint(FlagPDConcurrency)
if err != nil {
return errors.Annotatef(err, "failed to get flag %s", FlagPDConcurrency)
}
cfg.RegionScanConcurrency, err = flags.GetUint(FlagRegionScanConcurrency)
if err != nil {
return errors.Annotatef(err, "failed to get flag %s", FlagRegionScanConcurrency)
}
cfg.StatsConcurrency, err = flags.GetUint(FlagStatsConcurrency)
if err != nil {
return errors.Annotatef(err, "failed to get flag %s", FlagStatsConcurrency)
}
cfg.BatchFlushInterval, err = flags.GetDuration(FlagBatchFlushInterval)
if err != nil {
return errors.Annotatef(err, "failed to get flag %s", FlagBatchFlushInterval)

🤖 Generated with Claude Code

- If this code review was useful, please react with 👍. Otherwise, react with 👎.

@Leavrth

Leavrth commented Mar 17, 2026

Copy link
Copy Markdown
Contributor Author

/retest

1 similar comment
@Leavrth

Leavrth commented Mar 18, 2026

Copy link
Copy Markdown
Contributor Author

/retest

Signed-off-by: Jianjun Liao <jianjun.liao@outlook.com>
@Leavrth

Leavrth commented Mar 18, 2026

Copy link
Copy Markdown
Contributor Author

/retest

6 similar comments
@Leavrth

Leavrth commented Mar 18, 2026

Copy link
Copy Markdown
Contributor Author

/retest

@Leavrth

Leavrth commented Mar 18, 2026

Copy link
Copy Markdown
Contributor Author

/retest

@Leavrth

Leavrth commented Mar 18, 2026

Copy link
Copy Markdown
Contributor Author

/retest

@Leavrth

Leavrth commented Mar 18, 2026

Copy link
Copy Markdown
Contributor Author

/retest

@Leavrth

Leavrth commented Mar 19, 2026

Copy link
Copy Markdown
Contributor Author

/retest

@Leavrth

Leavrth commented Mar 19, 2026

Copy link
Copy Markdown
Contributor Author

/retest

@tiprow

tiprow Bot commented Mar 19, 2026

Copy link
Copy Markdown

@Leavrth: The following test failed, say /retest to rerun all failed tests or /retest-required to rerun all mandatory failed tests:

Test name Commit Details Required Rerun command
tidb_parser_test 47a55e0 link true /test tidb_parser_test

Full PR test history. Your PR dashboard.

Details

Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the kubernetes-sigs/prow repository. I understand the commands that are listed here.

@ti-chi-bot
ti-chi-bot Bot merged commit 485bd4b into pingcap:master Mar 19, 2026
38 of 39 checks passed
@Leavrth Leavrth added the needs-cherry-pick-release-8.5 Should cherry pick this PR to release-8.5 branch. label Mar 19, 2026
@ti-chi-bot

Copy link
Copy Markdown
Member

In response to a cherrypick label: new pull request created to branch release-8.5: #67142.
But this PR has conflicts, please resolve them!

ti-chi-bot pushed a commit to ti-chi-bot/tidb that referenced this pull request Mar 19, 2026
Signed-off-by: ti-chi-bot <ti-community-prow-bot@tidb.io>
@ti-chi-bot ti-chi-bot mentioned this pull request Mar 19, 2026
2 of 13 tasks
@coderabbitai coderabbitai Bot mentioned this pull request Apr 17, 2026
2 of 13 tasks
ti-chi-bot Bot pushed a commit that referenced this pull request Jun 3, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

approved lgtm needs-cherry-pick-release-8.5 Should cherry pick this PR to release-8.5 branch. ok-to-test Indicates a PR is ready to be tested. release-note Denotes a PR that will be considered when it comes time to generate release notes. size/L Denotes a PR that changes 100-499 lines, ignoring generated files.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

set region scan limiter to avoid stuck PD

5 participants