Skip to content

Commit

Permalink
feat: remove an unrequired parameter in errant GTID detection
Browse files Browse the repository at this point in the history
Signed-off-by: Manan Gupta <[email protected]>
  • Loading branch information
GuptaManan100 committed Nov 27, 2024
1 parent b126df0 commit 36eda82
Show file tree
Hide file tree
Showing 2 changed files with 8 additions and 7 deletions.
8 changes: 4 additions & 4 deletions go/vt/vtorc/inst/instance_dao.go
Original file line number Diff line number Diff line change
Expand Up @@ -362,7 +362,7 @@ Cleanup:
// Add replication group ancestry UUID as well. Otherwise, VTOrc thinks there are errant GTIDs in group
// members and its replicas, even though they are not.
instance.AncestryUUID = strings.Trim(instance.AncestryUUID, ",")
err = detectErrantGTIDs(tabletAlias, instance, tablet)
err = detectErrantGTIDs(instance, tablet)
}

latency.Stop("instance")
Expand Down Expand Up @@ -390,7 +390,7 @@ Cleanup:
}

// detectErrantGTIDs detects the errant GTIDs on an instance.
func detectErrantGTIDs(tabletAlias string, instance *Instance, tablet *topodatapb.Tablet) (err error) {
func detectErrantGTIDs(instance *Instance, tablet *topodatapb.Tablet) (err error) {
// If the tablet is not replicating from anyone, then it could be the previous primary.
// We should check for errant GTIDs by finding the difference with the shard's current primary.
if instance.primaryExecutedGtidSet == "" && instance.SourceHost == "" {
Expand All @@ -399,7 +399,7 @@ func detectErrantGTIDs(tabletAlias string, instance *Instance, tablet *topodatap
if primaryAlias != "" {
// Check if the current tablet is the primary.
// If it is, then we don't need to run errant gtid detection on it.
if primaryAlias == tabletAlias {
if primaryAlias == instance.InstanceAlias {
return nil
}
primaryInstance, _, _ = ReadInstance(primaryAlias)
Expand Down Expand Up @@ -439,7 +439,7 @@ func detectErrantGTIDs(tabletAlias string, instance *Instance, tablet *topodatap
if err == nil {
var gtidCount int64
gtidCount, err = replication.GTIDCount(instance.GtidErrant)
currentErrantGTIDCount.Set(tabletAlias, gtidCount)
currentErrantGTIDCount.Set(instance.InstanceAlias, gtidCount)
}
}
}
Expand Down
7 changes: 4 additions & 3 deletions go/vt/vtorc/inst/instance_dao_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -881,7 +881,8 @@ func TestDetectErrantGTIDs(t *testing.T) {
require.NoError(t, err)
}

err = detectErrantGTIDs(topoproto.TabletAliasString(tablet.Alias), tt.instance, tablet)
tt.instance.InstanceAlias = topoproto.TabletAliasString(tablet.Alias)
err = detectErrantGTIDs(tt.instance, tablet)
if tt.wantErr {
require.Error(t, err)
return
Expand Down Expand Up @@ -912,6 +913,7 @@ func TestPrimaryErrantGTIDs(t *testing.T) {
instance := &Instance{
SourceHost: "",
ExecutedGtidSet: "230ea8ea-81e3-11e4-972a-e25ec4bd140a:1-10589,8bc65c84-3fe4-11ed-a912-257f0fcdd6c9:1-34,316d193c-70e5-11e5-adb2-ecf4bb2262ff:1-341",
InstanceAlias: topoproto.TabletAliasString(tablet.Alias),
}

// Save shard record for the primary tablet.
Expand All @@ -921,7 +923,6 @@ func TestPrimaryErrantGTIDs(t *testing.T) {
require.NoError(t, err)

// Store the tablet record and the instance.
instance.InstanceAlias = topoproto.TabletAliasString(tablet.Alias)
err = SaveTablet(tablet)
require.NoError(t, err)
err = WriteInstance(instance, true, nil)
Expand All @@ -931,7 +932,7 @@ func TestPrimaryErrantGTIDs(t *testing.T) {
// gtid set further, we shouldn't be detecting errant GTIDs on it since it is the primary!
// We shouldn't be comparing it with a previous version of itself!
instance.ExecutedGtidSet = "230ea8ea-81e3-11e4-972a-e25ec4bd140a:1-10589,8bc65c84-3fe4-11ed-a912-257f0fcdd6c9:1-34,316d193c-70e5-11e5-adb2-ecf4bb2262ff:1-351"
err = detectErrantGTIDs(topoproto.TabletAliasString(tablet.Alias), instance, tablet)
err = detectErrantGTIDs(instance, tablet)
require.NoError(t, err)
require.EqualValues(t, "", instance.GtidErrant)
}

0 comments on commit 36eda82

Please sign in to comment.