executor: fix data race because of using shared KV requests (#61376)
This is an automated cherry-pick of #61376
What problem does this PR solve?
Issue Number: close #60175
Problem Summary:
What changed and how does it work?
The different coprocessor iterator should run on different KV requests, the share usage can cause data race.
Check List
Tests
- [x] 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.
None
@you06 This PR has conflicts, I have hold it.
Please resolve them or ask others to resolve them, then comment /unhold to remove the hold label.
/retest
Codecov Report
Attention: Patch coverage is 75.60976% with 10 lines in your changes missing coverage. Please review.
Please upload report for BASE (
release-7.1@b28c84d). Learn more about missing BASE report.
Additional details and impacted files
@@ Coverage Diff @@
## release-7.1 #61414 +/- ##
================================================
Coverage ? 73.4661%
================================================
Files ? 1213
Lines ? 382187
Branches ? 0
================================================
Hits ? 280778
Misses ? 83469
Partials ? 17940
:rocket: New features to boost your workflow:
- :snowflake: Test Analytics: Detect flaky tests, report on failures, and find test suite problems.
- :package: JS Bundle Analysis: Save yourself from yourself by tracking and limiting bundle sizes in JS merges.
[APPROVALNOTIFIER] This PR is APPROVED
This pull-request has been approved by: cfzjywxk, zyguan
The full list of commands accepted by this bot can be found here.
The pull request process is described here
- ~~OWNERS~~ [cfzjywxk,zyguan]
Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment
[LGTM Timeline notifier]
Timeline:
/unhold
/retest