Skip to content

Commit

Permalink
test/region_syncer: make TestPrepareCheckerWithTransferLeader more st…
Browse files Browse the repository at this point in the history
…able (#8357)

close #8351

Signed-off-by: husharp <[email protected]>

Co-authored-by: ti-chi-bot[bot] <108142056+ti-chi-bot[bot]@users.noreply.github.com>
  • Loading branch information
HuSharp and ti-chi-bot[bot] authored Jul 4, 2024
1 parent 86f8030 commit bc28a0f
Show file tree
Hide file tree
Showing 3 changed files with 14 additions and 6 deletions.
2 changes: 1 addition & 1 deletion Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -254,7 +254,7 @@ basic-test: install-tools

ci-test-job: install-tools dashboard-ui pd-ut
@$(FAILPOINT_ENABLE)
./scripts/ci-subtask.sh $(JOB_COUNT) $(JOB_INDEX) || { $(FAILPOINT_DISABLE); exit 1; }
./scripts/ci-subtask.sh $(JOB_INDEX) || { $(FAILPOINT_DISABLE); exit 1; }
@$(FAILPOINT_DISABLE)

TSO_INTEGRATION_TEST_PKGS := $(PD_PKG)/tests/server/tso
Expand Down
2 changes: 1 addition & 1 deletion scripts/ci-subtask.sh
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
#!/usr/bin/env bash

# ./ci-subtask.sh <TOTAL_TASK_N> <TASK_INDEX>
# ./ci-subtask.sh <TASK_INDEX>

ROOT_PATH_COV=$(pwd)/covprofile
ROOT_PATH_JUNITFILE=$(pwd)/junitfile
Expand Down
16 changes: 12 additions & 4 deletions tests/server/region_syncer/region_syncer_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -234,11 +234,13 @@ func TestPrepareChecker(t *testing.T) {
re.NoError(err)
err = pd2.Run()
re.NoError(err)
re.NotEmpty(cluster.WaitLeader())
// waiting for synchronization to complete
time.Sleep(3 * time.Second)
leaderServer = cluster.GetLeaderServer()
err = cluster.ResignLeader()
re.NoError(err)
re.Equal("pd2", cluster.WaitLeader())
re.NotEqual(leaderServer.GetServer().Name(), cluster.WaitLeader())
leaderServer = cluster.GetLeaderServer()
rc = leaderServer.GetServer().GetRaftCluster()
for _, region := range regions {
Expand Down Expand Up @@ -282,16 +284,22 @@ func TestPrepareCheckerWithTransferLeader(t *testing.T) {
re.NoError(err)
err = pd2.Run()
re.NoError(err)
re.NotEmpty(cluster.WaitLeader())
// waiting for synchronization to complete
time.Sleep(3 * time.Second)
leaderServer = cluster.GetLeaderServer()
err = cluster.ResignLeader()
re.NoError(err)
re.Equal("pd2", cluster.WaitLeader())
re.NotEqual(leaderServer.GetServer().Name(), cluster.WaitLeader())
rc = cluster.GetLeaderServer().GetRaftCluster()
re.True(rc.IsPrepared())

// transfer leader to pd1, can start coordinator immediately.
// transfer leader, can start coordinator immediately.
leaderServer = cluster.GetLeaderServer()
err = cluster.ResignLeader()
re.NoError(err)
re.Equal("pd1", cluster.WaitLeader())
re.NotEqual(leaderServer.GetLeader().GetName(), cluster.WaitLeader())
rc = cluster.GetLeaderServer().GetServer().GetRaftCluster()
re.True(rc.IsPrepared())
re.NoError(failpoint.Disable("github.com/tikv/pd/pkg/schedule/changeCoordinatorTicker"))
}

0 comments on commit bc28a0f

Please sign in to comment.