Skip to content

[vtctld/wrangler] Extract EmergencyReparentShard logic to dedicated struct and add unit tests#7464

Merged
deepthi merged 3 commits intovitessio:masterfrom
tinyspeck:am_emergency_reparenter
Feb 9, 2021
Merged

[vtctld/wrangler] Extract EmergencyReparentShard logic to dedicated struct and add unit tests#7464
deepthi merged 3 commits intovitessio:masterfrom
tinyspeck:am_emergency_reparenter

Conversation

@ajm188
Copy link
Contributor

@ajm188 ajm188 commented Feb 7, 2021

Description

Mostly what it says in the title. I'll follow up with a PlannedReparenter PR soonish to do the same thing to that set of functionality.

This for increasing test coverage on the ERS code as well as to set us
up for code reuse between the new vtctld and legacy vtctl RPCs in a
future PR.

Signed-off-by: Andrew Mason amason@slack-corp.com

Related Issue(s)

Checklist

  • Should this PR be backported? No
  • Tests were added or are not required
  • Documentation was added or is not required

Deployment Notes

Impacted Areas in Vitess

Components that this PR will affect:

  • Query Serving
  • VReplication
  • Cluster Management
  • Build/CI
  • VTAdmin

Copy link
Contributor Author

Choose a reason for hiding this comment

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

@deepthi question for you in particular here. @setassociative this is the issue I was talking to you about the other day.

Copy link
Collaborator

@deepthi deepthi Feb 8, 2021

Choose a reason for hiding this comment

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

It seems like an oversight. Either we care about errors from handleReplica and we should process them or not send them at all. The original design is documented in #6206 but I don't see that it goes into the details of error handling.

@ajm188 ajm188 force-pushed the am_emergency_reparenter branch from 05e2207 to ffd870e Compare February 7, 2021 20:27
Andrew Mason added 3 commits February 8, 2021 07:51
Enforcing single-MASTER shards is something only certain tests will
want, and in fact adding this behavior to `testutil.AddTablet` without
this option broke several existing tests.

Signed-off-by: Andrew Mason <amason@slack-corp.com>
Signed-off-by: Andrew Mason <amason@slack-corp.com>
…it tests

This for increasing test coverage on the ERS code as well as to set us
up for code reuse between the new vtctld and legacy vtctl RPCs in a
future PR.

Signed-off-by: Andrew Mason <amason@slack-corp.com>
@ajm188 ajm188 force-pushed the am_emergency_reparenter branch from ffd870e to 500b2e6 Compare February 8, 2021 12:51
Copy link
Collaborator

@deepthi deepthi left a comment

Choose a reason for hiding this comment

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

LGTM. I assume we'll need to fix the errCh issue separately.

@ajm188
Copy link
Contributor Author

ajm188 commented Feb 10, 2021

Yep, I just filed #7480 to track that. I'll work on a fix after I finish up tests on PlannedReparenter, since I'm in the middle of that.

@askdba askdba added this to the v10.0 milestone Feb 15, 2021
@ajm188 ajm188 deleted the am_emergency_reparenter branch March 4, 2021 16:32
setassociative pushed a commit to tinyspeck/vitess that referenced this pull request Mar 8, 2021
[vtctld/wrangler] Extract `EmergencyReparentShard` logic to dedicated struct and add unit tests

Signed-off-by: Richard Bailey <rbailey@slack-corp.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants