-
Notifications
You must be signed in to change notification settings - Fork 5.9k
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
*: fix the duplicate entry error when using BR to restore a NONCLUSTERED AUTO_ID_CACHE=1 table (#46127) #46217
*: fix the duplicate entry error when using BR to restore a NONCLUSTERED AUTO_ID_CACHE=1 table (#46127) #46217
Conversation
Signed-off-by: ti-chi-bot <[email protected]>
/retest-required |
Codecov Report
Additional details and impacted files@@ Coverage Diff @@
## release-6.5 #46217 +/- ##
================================================
Coverage ? 73.6729%
================================================
Files ? 1084
Lines ? 347923
Branches ? 0
================================================
Hits ? 256325
Misses ? 75143
Partials ? 16455 |
[APPROVALNOTIFIER] This PR is APPROVED This pull-request has been approved by: 3pointer, kennytm The full list of commands accepted by this bot can be found here. The pull request process is described here
Needs approval from an approver in each of these files:
Approvers can indicate their approval by writing |
This is an automated cherry-pick of #46127
What problem does this PR solve?
Issue Number: close #46093
Problem Summary:
What is changed and how it works?
For a NONCLUSTERED table with AUTO_ID_CACHE=1, like the case in #46093,
there are both
auto_increment_id
and_tidb_rowid
.The
model.TableInfo
only get one fieldAutoIncID
, the information is not enough to recover the table correctly.So a
AutoIncIDExtra
field is added for that case. We can record_tidb_rowid
inAutoIncIDExtra
and recover the_tidb_rowid
from it.Check List
Tests
Test the case follow the steps in #46093 manually.
I'm trying to add some test but find it difficult to do that in a unit test.
For example, I tried to add it in the
tests/realtikvtest/brietest
but found that it does not start the server layer so the auto id service does not run and I can't test the AUTO_ID_CACHE=1I tried to add it in the
server/tests
where a server is started, but it use unistore andbr recover table ...
can not run with unistore.Side effects
Documentation
Release note
Please refer to Release Notes Language Style Guide to write a quality release note.