diff --git a/cmd/pd-server/main.go b/cmd/pd-server/main.go index c36aac045f8..6c9b1d533dd 100644 --- a/cmd/pd-server/main.go +++ b/cmd/pd-server/main.go @@ -18,7 +18,6 @@ import ( "context" "os" "os/signal" - "strings" "syscall" grpcprometheus "github.com/grpc-ecosystem/go-grpc-prometheus" @@ -52,8 +51,8 @@ import ( ) const ( - keyspaceMode = "api" - tsoMode = "tso" + // Only serverless use this variable, we can use it to determine whether the PD is running in keyspace mode. + // The name is a little misleading, but it's kept for backward compatibility. serviceModeEnv = "PD_SERVICE_MODE" ) @@ -89,7 +88,7 @@ func NewServiceCommand() *cobra.Command { // NewTSOServiceCommand returns the tso service command. func NewTSOServiceCommand() *cobra.Command { cmd := &cobra.Command{ - Use: tsoMode, + Use: "tso", Short: "Run the TSO service", Run: tso.CreateServerWrapper, } @@ -129,11 +128,12 @@ func NewSchedulingServiceCommand() *cobra.Command { } // NewPDServiceCommand returns the PD service command. +// We can use pd directly. This command is kept for backward compatibility. func NewPDServiceCommand() *cobra.Command { cmd := &cobra.Command{ - Use: apiMode, + Use: "api", Short: "Run the PD service", - Run: createPDServiceWrapper, + Run: createServerWrapper, } addFlags(cmd) return cmd @@ -160,20 +160,12 @@ func addFlags(cmd *cobra.Command) { cmd.Flags().BoolP("force-new-cluster", "", false, "force to create a new one-member cluster") } -func createPDServiceWrapper(cmd *cobra.Command, args []string) { - start(cmd, args, cmd.CalledAs()) -} - func createServerWrapper(cmd *cobra.Command, args []string) { - mode := os.Getenv(serviceModeEnv) - if len(mode) != 0 && strings.ToLower(mode) == keyspaceMode { - start(cmd, args, keyspaceMode) - } else { - start(cmd, args) - } + isKeyspaceEnabled := os.Getenv(serviceModeEnv) != "" + start(cmd, args, isKeyspaceEnabled) } -func start(cmd *cobra.Command, args []string, services ...string) { +func start(cmd *cobra.Command, args []string, isKeyspaceEnabled bool) { schedulers.Register() cfg := config.NewConfig() flagSet := cmd.Flags() @@ -218,8 +210,8 @@ func start(cmd *cobra.Command, args []string, services ...string) { // Flushing any buffered log entries defer log.Sync() memory.InitMemoryHook() - if len(services) != 0 { - versioninfo.Log(server.PDServiceMode) + if isKeyspaceEnabled { + versioninfo.Log(server.PDKeyspaceMode) } else { versioninfo.Log(server.PDMode) } @@ -245,7 +237,7 @@ func start(cmd *cobra.Command, args []string, services ...string) { serviceBuilders = append(serviceBuilders, swaggerserver.NewHandler) } serviceBuilders = append(serviceBuilders, dashboard.GetServiceBuilders()...) - svr, err := server.CreateServer(ctx, cfg, services, serviceBuilders...) + svr, err := server.CreateServer(ctx, cfg, isKeyspaceEnabled, serviceBuilders...) if err != nil { log.Fatal("create server failed", errs.ZapError(err)) } diff --git a/server/api/server_test.go b/server/api/server_test.go index 9b99a6c32f8..02381c5e2f6 100644 --- a/server/api/server_test.go +++ b/server/api/server_test.go @@ -98,7 +98,7 @@ func mustNewCluster(re *require.Assertions, num int, opts ...func(cfg *config.Co for _, opt := range opts { opt(cfg) } - s, err := server.CreateServer(ctx, cfg, nil, NewHandler) + s, err := server.CreateServer(ctx, cfg, false, NewHandler) re.NoError(err) err = s.Run() re.NoError(err) diff --git a/server/api/version_test.go b/server/api/version_test.go index 5342b1d9ebb..27c0fe31890 100644 --- a/server/api/version_test.go +++ b/server/api/version_test.go @@ -58,7 +58,7 @@ func TestGetVersion(t *testing.T) { ctx, cancel := context.WithCancel(context.Background()) ch := make(chan *server.Server) go func(cfg *config.Config) { - s, err := server.CreateServer(ctx, cfg, nil, NewHandler) + s, err := server.CreateServer(ctx, cfg, false, NewHandler) re.NoError(err) re.NoError(failpoint.Enable("github.com/tikv/pd/server/memberNil", `return(true)`)) reqCh <- struct{}{} diff --git a/server/apiv2/handlers/micro_service.go b/server/apiv2/handlers/micro_service.go index b4d3d6bbe89..5453f82cd1e 100644 --- a/server/apiv2/handlers/micro_service.go +++ b/server/apiv2/handlers/micro_service.go @@ -39,11 +39,6 @@ func RegisterMicroService(r *gin.RouterGroup) { // @Router /ms/members/{service} [get] func GetMembers(c *gin.Context) { svr := c.MustGet(middlewares.ServerContextKey).(*server.Server) - if !svr.IsPDServiceMode() { - c.AbortWithStatusJSON(http.StatusNotFound, "not support micro service") - return - } - if service := c.Param("service"); len(service) > 0 { entries, err := discovery.GetMSMembers(service, svr.GetClient()) if err != nil { @@ -65,11 +60,6 @@ func GetMembers(c *gin.Context) { // @Router /ms/primary/{service} [get] func GetPrimary(c *gin.Context) { svr := c.MustGet(middlewares.ServerContextKey).(*server.Server) - if !svr.IsPDServiceMode() { - c.AbortWithStatusJSON(http.StatusNotFound, "not support micro service") - return - } - if service := c.Param("service"); len(service) > 0 { addr, _ := svr.GetServicePrimaryAddr(c.Request.Context(), service) c.IndentedJSON(http.StatusOK, addr) diff --git a/server/cluster/cluster.go b/server/cluster/cluster.go index 6989ad0a1af..98cae5c9903 100644 --- a/server/cluster/cluster.go +++ b/server/cluster/cluster.go @@ -131,7 +131,7 @@ type Server interface { GetMembers() ([]*pdpb.Member, error) ReplicateFileToMember(ctx context.Context, member *pdpb.Member, name string, data []byte) error GetKeyspaceGroupManager() *keyspace.GroupManager - IsPDServiceMode() bool + IsKeyspaceEnabled() bool GetSafePointV2Manager() *gc.SafePointV2Manager } @@ -156,12 +156,12 @@ type RaftCluster struct { etcdClient *clientv3.Client httpClient *http.Client - running bool - isPDServiceMode bool - meta *metapb.Cluster - storage storage.Storage - minResolvedTS atomic.Value // Store as uint64 - externalTS atomic.Value // Store as uint64 + running bool + isKeyspaceEnabled bool + meta *metapb.Cluster + storage storage.Storage + minResolvedTS atomic.Value // Store as uint64 + externalTS atomic.Value // Store as uint64 // Keep the previous store limit settings when removing a store. prevStoreLimit map[uint64]map[storelimit.Type]float64 @@ -325,7 +325,6 @@ func (c *RaftCluster) Start(s Server, bootstrap bool) (err error) { log.Warn("raft cluster has already been started") return nil } - c.isPDServiceMode = s.IsPDServiceMode() err = c.InitCluster(s.GetAllocator(), s.GetPersistOptions(), s.GetHBStreams(), s.GetKeyspaceGroupManager()) if err != nil { return err @@ -376,7 +375,7 @@ func (c *RaftCluster) Start(s Server, bootstrap bool) (err error) { c.loadExternalTS() c.loadMinResolvedTS() - if c.isPDServiceMode { + if c.isKeyspaceEnabled { // bootstrap keyspace group manager after starting other parts successfully. // This order avoids a stuck goroutine in keyspaceGroupManager when it fails to create raftcluster. err = c.keyspaceGroupManager.Bootstrap(c.ctx) diff --git a/server/server.go b/server/server.go index 7d0f58b5e71..8d93750471f 100644 --- a/server/server.go +++ b/server/server.go @@ -101,8 +101,8 @@ const ( // PDMode represents that server is in PD mode. PDMode = "PD" - // PDServiceMode represents that server is in PD service mode which is in microservice architecture. - PDServiceMode = "PD Service" + // PDKeyspaceMode represents that server is in PD Keyspace mode. + PDKeyspaceMode = "PD Keyspace" // maxRetryTimesGetServicePrimary is the max retry times for getting primary addr. // Note: it need to be less than client.defaultPDTimeout @@ -227,7 +227,7 @@ type Server struct { auditBackends []audit.Backend registry *registry.ServiceRegistry - isKeyspaceEnabled bool + mode string servicePrimaryMap sync.Map /* Store as map[string]string */ tsoPrimaryWatcher *etcdutil.LoopWatcher schedulingPrimaryWatcher *etcdutil.LoopWatcher @@ -240,14 +240,14 @@ type Server struct { type HandlerBuilder func(context.Context, *Server) (http.Handler, apiutil.APIServiceGroup, error) // CreateServer creates the UNINITIALIZED pd server with given configuration. -func CreateServer(ctx context.Context, cfg *config.Config, services []string, legacyServiceBuilders ...HandlerBuilder) (*Server, error) { - var isKeyspaceEnabled bool - if len(services) != 0 { - mode = PDServiceMode +func CreateServer(ctx context.Context, cfg *config.Config, isKeyspaceEnabled bool, legacyServiceBuilders ...HandlerBuilder) (*Server, error) { + var mode string + if isKeyspaceEnabled { + mode = PDKeyspaceMode } else { mode = PDMode } - log.Info("PD config", zap.Reflect("config", cfg)) + log.Info("PD config", zap.Bool("enable-keyspace", isKeyspaceEnabled), zap.Reflect("config", cfg)) serviceMiddlewareCfg := config.NewServiceMiddlewareConfig() s := &Server{ @@ -259,7 +259,7 @@ func CreateServer(ctx context.Context, cfg *config.Config, services []string, le ctx: ctx, startTimestamp: time.Now().Unix(), DiagnosticsServer: sysutil.NewDiagnosticsServer(cfg.Log.File.Filename), - isKeyspaceEnabled: isKeyspaceEnabled, + mode: mode, tsoClientPool: struct { syncutil.RWMutex clients map[string]tsopb.TSO_TsoClient @@ -478,7 +478,7 @@ func (s *Server) startServer(ctx context.Context) error { Member: s.member.MemberValue(), Step: keyspace.AllocStep, }) - if s.IsPDServiceMode() { + if s.IsKeyspaceEnabled() { s.keyspaceGroupManager = keyspace.NewKeyspaceGroupManager(s.ctx, s.storage, s.client) } s.keyspaceManager = keyspace.NewKeyspaceManager(s.ctx, s.storage, s.cluster, keyspaceIDAllocator, &s.cfg.Keyspace, s.keyspaceGroupManager) @@ -530,7 +530,7 @@ func (s *Server) Close() { s.cgMonitor.StopMonitor() s.stopServerLoop() - if s.IsPDServiceMode() { + if s.IsKeyspaceEnabled() { s.keyspaceGroupManager.Close() } @@ -786,9 +786,9 @@ func (s *Server) stopRaftCluster() { s.cluster.Stop() } -// IsPDServiceMode return whether the server is in PD service mode. -func (s *Server) IsPDServiceMode() bool { - return s.mode == PDServiceMode +// IsKeyspaceEnabled returns whether the server is in PD Keyspace mode. +func (s *Server) IsKeyspaceEnabled() bool { + return s.mode == PDKeyspaceMode } // GetAddr returns the server urls for clients. @@ -1722,13 +1722,13 @@ func (s *Server) campaignLeader() { } // EnableLeader to accept the remaining service, such as GetStore, GetRegion. s.member.EnableLeader() - member.ServiceMemberGauge.WithLabelValues(PD).Set(1) + member.ServiceMemberGauge.WithLabelValues(s.mode).Set(1) defer resetLeaderOnce.Do(func() { // as soon as cancel the leadership keepalive, then other member have chance // to be new leader. cancel() s.member.ResetLeader() - member.ServiceMemberGauge.WithLabelValues(PD).Set(0) + member.ServiceMemberGauge.WithLabelValues(s.mode).Set(0) }) CheckPDVersionWithClusterVersion(s.persistOptions) diff --git a/server/server_test.go b/server/server_test.go index 28839b89389..cf8b12eb672 100644 --- a/server/server_test.go +++ b/server/server_test.go @@ -29,7 +29,6 @@ import ( "go.etcd.io/etcd/server/v3/embed" "go.uber.org/goleak" - "github.com/tikv/pd/pkg/mcs/utils/constant" "github.com/tikv/pd/pkg/utils/apiutil" "github.com/tikv/pd/pkg/utils/assertutil" "github.com/tikv/pd/pkg/utils/etcdutil" @@ -67,7 +66,7 @@ func (suite *leaderServerTestSuite) SetupSuite() { go func() { mockHandler := CreateMockHandler(re, "127.0.0.1") - svr, err := CreateServer(suite.ctx, cfg, nil, mockHandler) + svr, err := CreateServer(suite.ctx, cfg, false, mockHandler) re.NoError(err) err = svr.Run() re.NoError(err) @@ -101,7 +100,7 @@ func newTestServersWithCfgs( for _, cfg := range cfgs { go func(cfg *config.Config) { mockHandler := CreateMockHandler(re, "127.0.0.1") - svr, err := CreateServer(ctx, cfg, nil, mockHandler) + svr, err := CreateServer(ctx, cfg, false, mockHandler) // prevent blocking if Asserts fails failed := true defer func() { @@ -142,9 +141,9 @@ func (suite *leaderServerTestSuite) TestRegisterServerHandler() { cfg := NewTestSingleConfig(assertutil.CheckerWithNilAssert(re)) ctx, cancel := context.WithCancel(context.Background()) mockHandler := CreateMockHandler(re, "127.0.0.1") - svr, err := CreateServer(ctx, cfg, nil, mockHandler) + svr, err := CreateServer(ctx, cfg, false, mockHandler) re.NoError(err) - _, err = CreateServer(ctx, cfg, nil, mockHandler, mockHandler) + _, err = CreateServer(ctx, cfg, false, mockHandler, mockHandler) // Repeat register. re.Error(err) defer func() { @@ -169,9 +168,9 @@ func (suite *leaderServerTestSuite) TestSourceIpForHeaderForwarded() { mockHandler := CreateMockHandler(re, "127.0.0.2") cfg := NewTestSingleConfig(assertutil.CheckerWithNilAssert(re)) ctx, cancel := context.WithCancel(context.Background()) - svr, err := CreateServer(ctx, cfg, nil, mockHandler) + svr, err := CreateServer(ctx, cfg, false, mockHandler) re.NoError(err) - _, err = CreateServer(ctx, cfg, nil, mockHandler, mockHandler) + _, err = CreateServer(ctx, cfg, false, mockHandler, mockHandler) // Repeat register. re.Error(err) defer func() { @@ -200,9 +199,9 @@ func (suite *leaderServerTestSuite) TestSourceIpForHeaderXReal() { mockHandler := CreateMockHandler(re, "127.0.0.2") cfg := NewTestSingleConfig(assertutil.CheckerWithNilAssert(re)) ctx, cancel := context.WithCancel(context.Background()) - svr, err := CreateServer(ctx, cfg, nil, mockHandler) + svr, err := CreateServer(ctx, cfg, false, mockHandler) re.NoError(err) - _, err = CreateServer(ctx, cfg, nil, mockHandler, mockHandler) + _, err = CreateServer(ctx, cfg, false, mockHandler, mockHandler) // Repeat register. re.Error(err) defer func() { @@ -231,9 +230,9 @@ func (suite *leaderServerTestSuite) TestSourceIpForHeaderBoth() { mockHandler := CreateMockHandler(re, "127.0.0.2") cfg := NewTestSingleConfig(assertutil.CheckerWithNilAssert(re)) ctx, cancel := context.WithCancel(context.Background()) - svr, err := CreateServer(ctx, cfg, nil, mockHandler) + svr, err := CreateServer(ctx, cfg, false, mockHandler) re.NoError(err) - _, err = CreateServer(ctx, cfg, nil, mockHandler, mockHandler) + _, err = CreateServer(ctx, cfg, false, mockHandler, mockHandler) // Repeat register. re.Error(err) defer func() { @@ -258,7 +257,7 @@ func (suite *leaderServerTestSuite) TestSourceIpForHeaderBoth() { re.Equal("Hello World\n", bodyString) } -func TestAPIService(t *testing.T) { +func TestMode(t *testing.T) { re := require.New(t) cfg := NewTestSingleConfig(assertutil.CheckerWithNilAssert(re)) @@ -266,13 +265,13 @@ func TestAPIService(t *testing.T) { ctx, cancel := context.WithCancel(context.Background()) defer cancel() mockHandler := CreateMockHandler(re, "127.0.0.1") - svr, err := CreateServer(ctx, cfg, []string{constant.PDServiceName}, mockHandler) + svr, err := CreateServer(ctx, cfg, true, mockHandler) re.NoError(err) defer svr.Close() err = svr.Run() re.NoError(err) MustWaitLeader(re, []*Server{svr}) - re.True(svr.IsPDServiceMode()) + re.True(svr.IsKeyspaceEnabled()) } func TestIsPathInDirectory(t *testing.T) { @@ -318,7 +317,7 @@ func TestCheckClusterID(t *testing.T) { // Start previous cluster, expect an error. cfgA.InitialCluster = originInitial mockHandler := CreateMockHandler(re, "127.0.0.1") - svr, err := CreateServer(ctx, cfgA, nil, mockHandler) + svr, err := CreateServer(ctx, cfgA, false, mockHandler) re.NoError(err) etcd, err := embed.StartEtcd(svr.etcdCfg) diff --git a/server/testutil.go b/server/testutil.go index d8bb9bb1cd9..7514d32dfa4 100644 --- a/server/testutil.go +++ b/server/testutil.go @@ -43,7 +43,7 @@ func NewTestServer(re *require.Assertions, c *assertutil.Checker) (*Server, test ctx, cancel := context.WithCancel(context.Background()) cfg := NewTestSingleConfig(c) mockHandler := CreateMockHandler(re, "127.0.0.1") - s, err := CreateServer(ctx, cfg, nil, mockHandler) + s, err := CreateServer(ctx, cfg, false, mockHandler) if err != nil { cancel() return nil, nil, err diff --git a/tests/cluster.go b/tests/cluster.go index 4189b43902a..f76be463127 100644 --- a/tests/cluster.go +++ b/tests/cluster.go @@ -36,7 +36,6 @@ import ( "github.com/tikv/pd/pkg/id" "github.com/tikv/pd/pkg/keyspace" scheduling "github.com/tikv/pd/pkg/mcs/scheduling/server" - "github.com/tikv/pd/pkg/mcs/utils/constant" "github.com/tikv/pd/pkg/schedule/schedulers" "github.com/tikv/pd/pkg/swaggerserver" "github.com/tikv/pd/pkg/tso" @@ -79,7 +78,7 @@ type TestServer struct { var zapLogOnce sync.Once // NewTestServer creates a new TestServer. -func NewTestServer(ctx context.Context, cfg *config.Config, services []string) (*TestServer, error) { +func NewTestServer(ctx context.Context, cfg *config.Config, isKeyspaceEnabled ...bool) (*TestServer, error) { // disable the heartbeat async runner in test cfg.Schedule.EnableHeartbeatConcurrentRunner = false err := logutil.SetupLogger(cfg.Log, &cfg.Logger, &cfg.LogProps, cfg.Security.RedactInfoLog) @@ -98,7 +97,11 @@ func NewTestServer(ctx context.Context, cfg *config.Config, services []string) ( serviceBuilders = append(serviceBuilders, swaggerserver.NewHandler) } serviceBuilders = append(serviceBuilders, dashboard.GetServiceBuilders()...) - svr, err := server.CreateServer(ctx, cfg, services, serviceBuilders...) + var enableKeyspace bool + if len(isKeyspaceEnabled) > 0 { + enableKeyspace = isKeyspaceEnabled[0] + } + svr, err := server.CreateServer(ctx, cfg, enableKeyspace, serviceBuilders...) if err != nil { return nil, err } @@ -426,15 +429,15 @@ type ConfigOption func(conf *config.Config, serverName string) // NewTestCluster creates a new TestCluster. func NewTestCluster(ctx context.Context, initialServerCount int, opts ...ConfigOption) (*TestCluster, error) { - return createTestCluster(ctx, initialServerCount, nil, opts...) + return createTestCluster(ctx, initialServerCount, false, opts...) } -// NewTestPDServiceCluster creates a new TestCluster with PD service. -func NewTestPDServiceCluster(ctx context.Context, initialServerCount int, opts ...ConfigOption) (*TestCluster, error) { - return createTestCluster(ctx, initialServerCount, []string{constant.PDServiceName}, opts...) +// NewTestClusterWithKeyspace creates a new TestCluster with keyspace enabled. +func NewTestClusterWithKeyspace(ctx context.Context, initialServerCount int, opts ...ConfigOption) (*TestCluster, error) { + return createTestCluster(ctx, initialServerCount, true, opts...) } -func createTestCluster(ctx context.Context, initialServerCount int, services []string, opts ...ConfigOption) (*TestCluster, error) { +func createTestCluster(ctx context.Context, initialServerCount int, isKeyspaceEnabled bool, opts ...ConfigOption) (*TestCluster, error) { schedulers.Register() config := newClusterConfig(initialServerCount) servers := make(map[string]*TestServer) @@ -443,7 +446,7 @@ func createTestCluster(ctx context.Context, initialServerCount int, services []s if err != nil { return nil, err } - s, err := NewTestServer(ctx, serverConf, services) + s, err := NewTestServer(ctx, serverConf, isKeyspaceEnabled) if err != nil { return nil, err } @@ -461,13 +464,13 @@ func createTestCluster(ctx context.Context, initialServerCount int, services []s }, nil } -// RestartTestAPICluster restarts the API test cluster. -func RestartTestAPICluster(ctx context.Context, cluster *TestCluster) (*TestCluster, error) { +// RestartTestPDCluster restarts the pd service cluster. +func RestartTestPDCluster(ctx context.Context, cluster *TestCluster) (*TestCluster, error) { return restartTestCluster(ctx, cluster, true) } func restartTestCluster( - ctx context.Context, cluster *TestCluster, isPDServiceMode bool, + ctx context.Context, cluster *TestCluster, isKeyspaceEnabled bool, ) (newTestCluster *TestCluster, err error) { schedulers.Register() newTestCluster = &TestCluster{ @@ -494,11 +497,7 @@ func restartTestCluster( newServer *TestServer serverErr error ) - if isPDServiceMode { - newServer, serverErr = NewTestServer(ctx, serverCfg, []string{constant.PDServiceName}) - } else { - newServer, serverErr = NewTestServer(ctx, serverCfg, nil) - } + newServer, serverErr = NewTestServer(ctx, serverCfg, isKeyspaceEnabled) serverMap.Store(serverName, newServer) errorMap.Store(serverName, serverErr) }(serverName, server) @@ -721,7 +720,7 @@ func (c *TestCluster) Join(ctx context.Context, opts ...ConfigOption) (*TestServ if err != nil { return nil, err } - s, err := NewTestServer(ctx, conf, nil) + s, err := NewTestServer(ctx, conf) if err != nil { return nil, err } @@ -729,13 +728,13 @@ func (c *TestCluster) Join(ctx context.Context, opts ...ConfigOption) (*TestServ return s, nil } -// JoinPDServer is used to add a new TestServer into the cluster. -func (c *TestCluster) JoinPDServer(ctx context.Context, opts ...ConfigOption) (*TestServer, error) { +// JoinWithKeyspace is used to add a new TestServer into the cluster with keyspace enabled. +func (c *TestCluster) JoinWithKeyspace(ctx context.Context, opts ...ConfigOption) (*TestServer, error) { conf, err := c.config.join().Generate(opts...) if err != nil { return nil, err } - s, err := NewTestServer(ctx, conf, []string{constant.PDServiceName}) + s, err := NewTestServer(ctx, conf, true) if err != nil { return nil, err } diff --git a/tests/integrations/client/client_test.go b/tests/integrations/client/client_test.go index ab3874a33a7..7a7a41c6159 100644 --- a/tests/integrations/client/client_test.go +++ b/tests/integrations/client/client_test.go @@ -361,7 +361,7 @@ func TestTSOFollowerProxyWithTSOService(t *testing.T) { re.NoError(failpoint.Enable("github.com/tikv/pd/client/servicediscovery/fastUpdateServiceMode", `return(true)`)) ctx, cancel := context.WithCancel(context.Background()) defer cancel() - cluster, err := tests.NewTestPDServiceCluster(ctx, 1) + cluster, err := tests.NewTestClusterWithKeyspace(ctx, 1) re.NoError(err) defer cluster.Destroy() err = cluster.RunInitialServers() diff --git a/tests/integrations/mcs/discovery/register_test.go b/tests/integrations/mcs/discovery/register_test.go index eb8933e10d8..b8a6f0e4b41 100644 --- a/tests/integrations/mcs/discovery/register_test.go +++ b/tests/integrations/mcs/discovery/register_test.go @@ -54,7 +54,7 @@ func (suite *serverRegisterTestSuite) SetupSuite() { re := suite.Require() suite.ctx, suite.cancel = context.WithCancel(context.Background()) - suite.cluster, err = tests.NewTestPDServiceCluster(suite.ctx, 1) + suite.cluster, err = tests.NewTestCluster(suite.ctx, 1) re.NoError(err) err = suite.cluster.RunInitialServers() diff --git a/tests/integrations/mcs/keyspace/tso_keyspace_group_test.go b/tests/integrations/mcs/keyspace/tso_keyspace_group_test.go index b31d919324d..ee456f32e91 100644 --- a/tests/integrations/mcs/keyspace/tso_keyspace_group_test.go +++ b/tests/integrations/mcs/keyspace/tso_keyspace_group_test.go @@ -60,7 +60,7 @@ func (suite *keyspaceGroupTestSuite) SetupTest() { re.NoError(failpoint.Enable("github.com/tikv/pd/pkg/keyspace/acceleratedAllocNodes", `return(true)`)) ctx, cancel := context.WithCancel(context.Background()) suite.ctx = ctx - cluster, err := tests.NewTestPDServiceCluster(suite.ctx, 1) + cluster, err := tests.NewTestClusterWithKeyspace(suite.ctx, 1) suite.cluster = cluster re.NoError(err) re.NoError(cluster.RunInitialServers()) diff --git a/tests/integrations/mcs/members/member_test.go b/tests/integrations/mcs/members/member_test.go index 7e83ea570b9..cd800027401 100644 --- a/tests/integrations/mcs/members/member_test.go +++ b/tests/integrations/mcs/members/member_test.go @@ -64,7 +64,7 @@ func (suite *memberTestSuite) SetupTest() { re.NoError(failpoint.Enable("github.com/tikv/pd/pkg/keyspace/acceleratedAllocNodes", `return(true)`)) ctx, cancel := context.WithCancel(context.Background()) suite.ctx = ctx - cluster, err := tests.NewTestPDServiceCluster(suite.ctx, 1) + cluster, err := tests.NewTestClusterWithKeyspace(suite.ctx, 1) suite.cluster = cluster re.NoError(err) re.NoError(cluster.RunInitialServers()) diff --git a/tests/integrations/mcs/scheduling/api_test.go b/tests/integrations/mcs/scheduling/api_test.go index 4a172ee6031..909b4a0bf5e 100644 --- a/tests/integrations/mcs/scheduling/api_test.go +++ b/tests/integrations/mcs/scheduling/api_test.go @@ -520,11 +520,7 @@ func (suite *apiTestSuite) checkFollowerForward(cluster *tests.TestCluster) { leaderAddr := cluster.GetLeaderServer().GetAddr() ctx, cancel := context.WithCancel(context.Background()) defer cancel() -<<<<<<< HEAD - follower, err := cluster.JoinPDServer(ctx) -======= - follower, err := cluster.JoinServerWithKeyspace(ctx) ->>>>>>> remove api mode + follower, err := cluster.Join(ctx) re.NoError(err) re.NoError(follower.Run()) re.NotEmpty(cluster.WaitLeader()) diff --git a/tests/integrations/mcs/scheduling/config_test.go b/tests/integrations/mcs/scheduling/config_test.go index 6c770d3e4c1..aab4f889a34 100644 --- a/tests/integrations/mcs/scheduling/config_test.go +++ b/tests/integrations/mcs/scheduling/config_test.go @@ -62,7 +62,7 @@ func (suite *configTestSuite) SetupSuite() { schedulers.Register() var err error suite.ctx, suite.cancel = context.WithCancel(context.Background()) - suite.cluster, err = tests.NewTestPDServiceCluster(suite.ctx, 1) + suite.cluster, err = tests.NewTestCluster(suite.ctx, 1) re.NoError(err) err = suite.cluster.RunInitialServers() re.NoError(err) diff --git a/tests/integrations/mcs/scheduling/meta_test.go b/tests/integrations/mcs/scheduling/meta_test.go index 8df576b82ca..6e096a9edde 100644 --- a/tests/integrations/mcs/scheduling/meta_test.go +++ b/tests/integrations/mcs/scheduling/meta_test.go @@ -53,7 +53,7 @@ func (suite *metaTestSuite) SetupSuite() { re.NoError(failpoint.Enable("github.com/tikv/pd/server/cluster/highFrequencyClusterJobs", `return(true)`)) var err error suite.ctx, suite.cancel = context.WithCancel(context.Background()) - suite.cluster, err = tests.NewTestPDServiceCluster(suite.ctx, 1) + suite.cluster, err = tests.NewTestCluster(suite.ctx, 1) re.NoError(err) err = suite.cluster.RunInitialServers() re.NoError(err) diff --git a/tests/integrations/mcs/scheduling/rule_test.go b/tests/integrations/mcs/scheduling/rule_test.go index 706c5784831..9aaa82e261c 100644 --- a/tests/integrations/mcs/scheduling/rule_test.go +++ b/tests/integrations/mcs/scheduling/rule_test.go @@ -54,7 +54,7 @@ func (suite *ruleTestSuite) SetupSuite() { var err error suite.ctx, suite.cancel = context.WithCancel(context.Background()) - suite.cluster, err = tests.NewTestPDServiceCluster(suite.ctx, 1) + suite.cluster, err = tests.NewTestCluster(suite.ctx, 1) re.NoError(err) err = suite.cluster.RunInitialServers() re.NoError(err) diff --git a/tests/integrations/mcs/scheduling/server_test.go b/tests/integrations/mcs/scheduling/server_test.go index 9a3d33d1dcf..2eae9f2fa2a 100644 --- a/tests/integrations/mcs/scheduling/server_test.go +++ b/tests/integrations/mcs/scheduling/server_test.go @@ -66,7 +66,7 @@ func (suite *serverTestSuite) SetupSuite() { re.NoError(failpoint.Enable("github.com/tikv/pd/pkg/mcs/scheduling/server/changeRunCollectWaitTime", `return(true)`)) re.NoError(failpoint.Enable("github.com/tikv/pd/server/cluster/highFrequencyClusterJobs", `return(true)`)) suite.ctx, suite.cancel = context.WithCancel(context.Background()) - suite.cluster, err = tests.NewTestPDServiceCluster(suite.ctx, 1) + suite.cluster, err = tests.NewTestCluster(suite.ctx, 1) re.NoError(err) err = suite.cluster.RunInitialServers() @@ -636,7 +636,7 @@ func (suite *multipleServerTestSuite) SetupSuite() { re := suite.Require() re.NoError(failpoint.Enable("github.com/tikv/pd/server/cluster/highFrequencyClusterJobs", `return(true)`)) suite.ctx, suite.cancel = context.WithCancel(context.Background()) - suite.cluster, err = tests.NewTestPDServiceCluster(suite.ctx, 2) + suite.cluster, err = tests.NewTestCluster(suite.ctx, 2) re.NoError(err) err = suite.cluster.RunInitialServers() diff --git a/tests/integrations/mcs/tso/api_test.go b/tests/integrations/mcs/tso/api_test.go index dceb5ccdf7c..93a3cefc63e 100644 --- a/tests/integrations/mcs/tso/api_test.go +++ b/tests/integrations/mcs/tso/api_test.go @@ -48,7 +48,7 @@ type tsoAPITestSuite struct { suite.Suite ctx context.Context cancel context.CancelFunc - pdCluster *tests.TestCluster + pdServiceCluster *tests.TestCluster tsoCluster *tests.TestTSOCluster backendEndpoints string } @@ -62,13 +62,13 @@ func (suite *tsoAPITestSuite) SetupTest() { var err error suite.ctx, suite.cancel = context.WithCancel(context.Background()) - suite.pdCluster, err = tests.NewTestPDServiceCluster(suite.ctx, 1) + suite.pdServiceCluster, err = tests.NewTestClusterWithKeyspace(suite.ctx, 1) re.NoError(err) - err = suite.pdCluster.RunInitialServers() + err = suite.pdServiceCluster.RunInitialServers() re.NoError(err) - leaderName := suite.pdCluster.WaitLeader() + leaderName := suite.pdServiceCluster.WaitLeader() re.NotEmpty(leaderName) - pdLeaderServer := suite.pdCluster.GetServer(leaderName) + pdLeaderServer := suite.pdServiceCluster.GetServer(leaderName) re.NoError(pdLeaderServer.BootstrapCluster()) suite.backendEndpoints = pdLeaderServer.GetAddr() suite.tsoCluster, err = tests.NewTestTSOCluster(suite.ctx, 1, suite.backendEndpoints) @@ -78,7 +78,7 @@ func (suite *tsoAPITestSuite) SetupTest() { func (suite *tsoAPITestSuite) TearDownTest() { suite.cancel() suite.tsoCluster.Destroy() - suite.pdCluster.Destroy() + suite.pdServiceCluster.Destroy() } func (suite *tsoAPITestSuite) TestGetKeyspaceGroupMembers() { @@ -137,12 +137,12 @@ func TestTSOServerStartFirst(t *testing.T) { ctx, cancel := context.WithCancel(context.Background()) defer cancel() - apiCluster, err := tests.NewTestPDServiceCluster(ctx, 1, func(conf *config.Config, _ string) { + pdServiceCluster, err := tests.NewTestClusterWithKeyspace(ctx, 1, func(conf *config.Config, _ string) { conf.Keyspace.PreAlloc = []string{"k1", "k2"} }) - defer apiCluster.Destroy() + defer pdServiceCluster.Destroy() re.NoError(err) - addr := apiCluster.GetConfig().GetClientURL() + addr := pdServiceCluster.GetConfig().GetClientURL() ch := make(chan struct{}) defer close(ch) clusterCh := make(chan *tests.TestTSOCluster) @@ -155,11 +155,11 @@ func TestTSOServerStartFirst(t *testing.T) { clusterCh <- tsoCluster ch <- struct{}{} }() - err = apiCluster.RunInitialServers() + err = pdServiceCluster.RunInitialServers() re.NoError(err) - leaderName := apiCluster.WaitLeader() + leaderName := pdServiceCluster.WaitLeader() re.NotEmpty(leaderName) - pdLeaderServer := apiCluster.GetServer(leaderName) + pdLeaderServer := pdServiceCluster.GetServer(leaderName) re.NoError(pdLeaderServer.BootstrapCluster()) re.NoError(err) tsoCluster := <-clusterCh @@ -200,7 +200,7 @@ func TestForwardOnlyTSONoScheduling(t *testing.T) { re := require.New(t) ctx, cancel := context.WithCancel(context.Background()) defer cancel() - tc, err := tests.NewTestPDServiceCluster(ctx, 1) + tc, err := tests.NewTestCluster(ctx, 1) defer tc.Destroy() re.NoError(err) err = tc.RunInitialServers() diff --git a/tests/integrations/mcs/tso/keyspace_group_manager_test.go b/tests/integrations/mcs/tso/keyspace_group_manager_test.go index ecbc0295845..e7f657de086 100644 --- a/tests/integrations/mcs/tso/keyspace_group_manager_test.go +++ b/tests/integrations/mcs/tso/keyspace_group_manager_test.go @@ -82,7 +82,7 @@ func (suite *tsoKeyspaceGroupManagerTestSuite) SetupSuite() { var err error suite.ctx, suite.cancel = context.WithCancel(context.Background()) - suite.cluster, err = tests.NewTestPDServiceCluster(suite.ctx, 1) + suite.cluster, err = tests.NewTestClusterWithKeyspace(suite.ctx, 1) re.NoError(err) err = suite.cluster.RunInitialServers() re.NoError(err) @@ -538,7 +538,7 @@ func TestTwiceSplitKeyspaceGroup(t *testing.T) { re.NoError(failpoint.Enable("github.com/tikv/pd/pkg/tso/fastGroupSplitPatroller", `return(true)`)) // Init PD service config but not start. - tc, err := tests.NewTestPDServiceCluster(ctx, 1, func(conf *config.Config, _ string) { + tc, err := tests.NewTestClusterWithKeyspace(ctx, 1, func(conf *config.Config, _ string) { conf.Keyspace.PreAlloc = []string{ "keyspace_a", "keyspace_b", } @@ -735,7 +735,7 @@ func TestGetTSOImmediately(t *testing.T) { re.NoError(failpoint.Enable("github.com/tikv/pd/pkg/tso/fastGroupSplitPatroller", `return(true)`)) // Init PD service config but not start. - tc, err := tests.NewTestPDServiceCluster(ctx, 1, func(conf *config.Config, _ string) { + tc, err := tests.NewTestClusterWithKeyspace(ctx, 1, func(conf *config.Config, _ string) { conf.Keyspace.PreAlloc = []string{ "keyspace_a", "keyspace_b", } diff --git a/tests/integrations/mcs/tso/proxy_test.go b/tests/integrations/mcs/tso/proxy_test.go index 413368e216c..6c4fc61b1a6 100644 --- a/tests/integrations/mcs/tso/proxy_test.go +++ b/tests/integrations/mcs/tso/proxy_test.go @@ -43,7 +43,7 @@ type tsoProxyTestSuite struct { suite.Suite ctx context.Context cancel context.CancelFunc - pdCluster *tests.TestCluster + pdServiceCluster *tests.TestCluster pdLeader *tests.TestServer backendEndpoints string tsoCluster *tests.TestTSOCluster @@ -61,14 +61,14 @@ func (s *tsoProxyTestSuite) SetupSuite() { var err error s.ctx, s.cancel = context.WithCancel(context.Background()) - // Create an API cluster with 1 server - s.pdCluster, err = tests.NewTestPDServiceCluster(s.ctx, 1) + // Create an PD service cluster with 1 server + s.pdServiceCluster, err = tests.NewTestCluster(s.ctx, 1) re.NoError(err) - err = s.pdCluster.RunInitialServers() + err = s.pdServiceCluster.RunInitialServers() re.NoError(err) - leaderName := s.pdCluster.WaitLeader() + leaderName := s.pdServiceCluster.WaitLeader() re.NotEmpty(leaderName) - s.pdLeader = s.pdCluster.GetServer(leaderName) + s.pdLeader = s.pdServiceCluster.GetServer(leaderName) s.backendEndpoints = s.pdLeader.GetAddr() re.NoError(s.pdLeader.BootstrapCluster()) @@ -89,7 +89,7 @@ func (s *tsoProxyTestSuite) SetupSuite() { func (s *tsoProxyTestSuite) TearDownSuite() { cleanupGRPCStreams(s.cleanupFuncs) s.tsoCluster.Destroy() - s.pdCluster.Destroy() + s.pdServiceCluster.Destroy() s.cancel() } diff --git a/tests/integrations/mcs/tso/server_test.go b/tests/integrations/mcs/tso/server_test.go index cff3e5e9e10..73eb2df9c41 100644 --- a/tests/integrations/mcs/tso/server_test.go +++ b/tests/integrations/mcs/tso/server_test.go @@ -75,7 +75,7 @@ func (suite *tsoServerTestSuite) SetupSuite() { re := suite.Require() suite.ctx, suite.cancel = context.WithCancel(context.Background()) - suite.cluster, err = tests.NewTestPDServiceCluster(suite.ctx, 1) + suite.cluster, err = tests.NewTestClusterWithKeyspace(suite.ctx, 1) re.NoError(err) err = suite.cluster.RunInitialServers() @@ -168,7 +168,7 @@ func checkTSOPath(re *require.Assertions, isPDServiceMode bool) { ctx, cancel := context.WithCancel(context.Background()) defer cancel() if isPDServiceMode { - cluster, err = tests.NewTestPDServiceCluster(ctx, 1, func(conf *config.Config, _ string) { + cluster, err = tests.NewTestCluster(ctx, 1, func(conf *config.Config, _ string) { conf.MicroService.EnableTSODynamicSwitching = false }) } else { @@ -230,7 +230,7 @@ func NewPDServiceForward(re *require.Assertions) PDServiceForward { } var err error suite.ctx, suite.cancel = context.WithCancel(context.Background()) - suite.cluster, err = tests.NewTestPDServiceCluster(suite.ctx, 3) + suite.cluster, err = tests.NewTestClusterWithKeyspace(suite.ctx, 3) re.NoError(err) err = suite.cluster.RunInitialServers() @@ -504,7 +504,7 @@ func (suite *CommonTestSuite) SetupSuite() { var err error re := suite.Require() suite.ctx, suite.cancel = context.WithCancel(context.Background()) - suite.cluster, err = tests.NewTestPDServiceCluster(suite.ctx, 1) + suite.cluster, err = tests.NewTestClusterWithKeyspace(suite.ctx, 1) re.NoError(err) err = suite.cluster.RunInitialServers() @@ -568,7 +568,7 @@ func (suite *CommonTestSuite) TestBootstrapDefaultKeyspaceGroup() { } check() - s, err := suite.cluster.JoinPDServer(suite.ctx) + s, err := suite.cluster.JoinWithKeyspace(suite.ctx) re.NoError(err) re.NoError(s.Run()) @@ -590,7 +590,7 @@ func TestTSOServiceSwitch(t *testing.T) { ctx, cancel := context.WithCancel(context.Background()) defer cancel() - tc, err := tests.NewTestPDServiceCluster(ctx, 1, + tc, err := tests.NewTestCluster(ctx, 1, func(conf *config.Config, _ string) { conf.MicroService.EnableTSODynamicSwitching = true }, diff --git a/tests/integrations/tso/client_test.go b/tests/integrations/tso/client_test.go index a7ff9d89d05..d38f85ddce0 100644 --- a/tests/integrations/tso/client_test.go +++ b/tests/integrations/tso/client_test.go @@ -98,7 +98,7 @@ func (suite *tsoClientTestSuite) SetupSuite() { if suite.legacy { suite.cluster, err = tests.NewTestCluster(suite.ctx, serverCount) } else { - suite.cluster, err = tests.NewTestPDServiceCluster(suite.ctx, serverCount, func(conf *config.Config, _ string) { + suite.cluster, err = tests.NewTestClusterWithKeyspace(suite.ctx, serverCount, func(conf *config.Config, _ string) { conf.MicroService.EnableTSODynamicSwitching = false }) } @@ -510,7 +510,7 @@ func TestMixedTSODeployment(t *testing.T) { re.NotNil(leaderServer) backendEndpoints := leaderServer.GetAddr() - pdSvr, err := cluster.JoinPDServer(ctx) + pdSvr, err := cluster.Join(ctx) re.NoError(err) err = pdSvr.Run() re.NoError(err) @@ -537,20 +537,20 @@ func TestMixedTSODeployment(t *testing.T) { wg.Wait() } -// TestUpgradingAPIAndTSOClusters tests the scenario that after we restart the API cluster +// TestUpgradingAPIAndTSOClusters tests the scenario that after we restart the PD service cluster // then restart the TSO cluster, the TSO service can still serve TSO requests normally. func TestUpgradingAPIAndTSOClusters(t *testing.T) { re := require.New(t) ctx, cancel := context.WithCancel(context.Background()) // Create an pd cluster which has 3 servers - pdCluster, err := tests.NewTestPDServiceCluster(ctx, 3) + pdServiceCluster, err := tests.NewTestCluster(ctx, 3) re.NoError(err) - err = pdCluster.RunInitialServers() + err = pdServiceCluster.RunInitialServers() re.NoError(err) - leaderName := pdCluster.WaitLeader() + leaderName := pdServiceCluster.WaitLeader() re.NotEmpty(leaderName) - pdLeader := pdCluster.GetServer(leaderName) + pdLeader := pdServiceCluster.GetServer(leaderName) backendEndpoints := pdLeader.GetAddr() // Create a pd client in PD mode to let the API leader to forward requests to the TSO cluster. @@ -568,8 +568,8 @@ func TestUpgradingAPIAndTSOClusters(t *testing.T) { // The TSO service should be eventually healthy mcs.WaitForTSOServiceAvailable(ctx, re, pdClient) - // Restart the API cluster - apiCluster, err = tests.RestartTestAPICluster(ctx, apiCluster) + // Restart the PD service cluster + pdServiceCluster, err = tests.RestartTestPDCluster(ctx, pdServiceCluster) re.NoError(err) // The TSO service should be eventually healthy mcs.WaitForTSOServiceAvailable(ctx, re, pdClient) @@ -581,7 +581,7 @@ func TestUpgradingAPIAndTSOClusters(t *testing.T) { mcs.WaitForTSOServiceAvailable(ctx, re, pdClient) tsoCluster.Destroy() - apiCluster.Destroy() + pdServiceCluster.Destroy() cancel() re.NoError(failpoint.Disable("github.com/tikv/pd/client/servicediscovery/usePDServiceMode")) } diff --git a/tests/integrations/tso/consistency_test.go b/tests/integrations/tso/consistency_test.go index b29ae696f26..43f5f1efdfe 100644 --- a/tests/integrations/tso/consistency_test.go +++ b/tests/integrations/tso/consistency_test.go @@ -73,11 +73,7 @@ func (suite *tsoConsistencyTestSuite) SetupSuite() { var err error suite.ctx, suite.cancel = context.WithCancel(context.Background()) - if suite.legacy { - suite.cluster, err = tests.NewTestCluster(suite.ctx, serverCount) - } else { - suite.cluster, err = tests.NewTestPDServiceCluster(suite.ctx, serverCount) - } + suite.cluster, err = tests.NewTestCluster(suite.ctx, serverCount) re.NoError(err) err = suite.cluster.RunInitialServers() re.NoError(err) diff --git a/tests/integrations/tso/server_test.go b/tests/integrations/tso/server_test.go index 1428dbcd1a6..5293447206a 100644 --- a/tests/integrations/tso/server_test.go +++ b/tests/integrations/tso/server_test.go @@ -71,11 +71,7 @@ func (suite *tsoServerTestSuite) SetupSuite() { var err error suite.ctx, suite.cancel = context.WithCancel(context.Background()) - if suite.legacy { - suite.cluster, err = tests.NewTestCluster(suite.ctx, serverCount) - } else { - suite.cluster, err = tests.NewTestPDServiceCluster(suite.ctx, serverCount) - } + suite.cluster, err = tests.NewTestCluster(suite.ctx, serverCount) re.NoError(err) err = suite.cluster.RunInitialServers() re.NoError(err) diff --git a/tests/server/apiv2/handlers/tso_keyspace_group_test.go b/tests/server/apiv2/handlers/tso_keyspace_group_test.go index 851df9b5fd1..4e394c628bd 100644 --- a/tests/server/apiv2/handlers/tso_keyspace_group_test.go +++ b/tests/server/apiv2/handlers/tso_keyspace_group_test.go @@ -42,7 +42,7 @@ func TestKeyspaceGroupTestSuite(t *testing.T) { func (suite *keyspaceGroupTestSuite) SetupTest() { re := suite.Require() suite.ctx, suite.cancel = context.WithCancel(context.Background()) - cluster, err := tests.NewTestPDServiceCluster(suite.ctx, 1) + cluster, err := tests.NewTestClusterWithKeyspace(suite.ctx, 1) suite.cluster = cluster re.NoError(err) re.NoError(cluster.RunInitialServers()) diff --git a/tests/server/member/member_test.go b/tests/server/member/member_test.go index cb8fd7bda00..72cceb5f6a8 100644 --- a/tests/server/member/member_test.go +++ b/tests/server/member/member_test.go @@ -386,7 +386,7 @@ func TestGetLeader(t *testing.T) { wg := &sync.WaitGroup{} wg.Add(1) done := make(chan bool) - svr, err := server.CreateServer(ctx, cfg, nil, server.CreateMockHandler(re, "127.0.0.1")) + svr, err := server.CreateServer(ctx, cfg, false, server.CreateMockHandler(re, "127.0.0.1")) re.NoError(err) defer svr.Close() re.NoError(svr.Run()) diff --git a/tests/server/server_test.go b/tests/server/server_test.go index 06623b6f092..77cd7aa5158 100644 --- a/tests/server/server_test.go +++ b/tests/server/server_test.go @@ -67,7 +67,7 @@ func TestUpdateAdvertiseUrls(t *testing.T) { for _, conf := range cluster.GetConfig().InitialServers { serverConf, err := conf.Generate() re.NoError(err) - s, err := tests.NewTestServer(ctx, serverConf, nil) + s, err := tests.NewTestServer(ctx, serverConf) re.NoError(err) cluster.GetServers()[conf.Name] = s } diff --git a/tests/testutil.go b/tests/testutil.go index 27ab2b76eaf..72e769b04e9 100644 --- a/tests/testutil.go +++ b/tests/testutil.go @@ -279,7 +279,7 @@ const ( Both SchedulerMode = iota // PDMode represents PD mode. PDMode - // PDServiceMode represents API mode. + // PDServiceMode represents PD service mode. PDServiceMode ) @@ -303,7 +303,7 @@ func NewSchedulingTestEnvironment(t *testing.T, opts ...ConfigOption) *Schedulin } // RunTestBasedOnMode runs test based on mode. -// If mode not set, it will run test in both PD mode and keyspace mode. +// If mode not set, it will run test in both PD mode and PD service mode. func (s *SchedulingTestEnvironment) RunTestBasedOnMode(test func(*TestCluster)) { switch s.RunMode { case PDMode: @@ -380,7 +380,7 @@ func (s *SchedulingTestEnvironment) startCluster(m SchedulerMode) { re.NoError(leaderServer.BootstrapCluster()) s.clusters[PDMode] = cluster case PDServiceMode: - cluster, err := NewTestPDServiceCluster(ctx, 1, s.opts...) + cluster, err := NewTestCluster(ctx, 1, s.opts...) re.NoError(err) err = cluster.RunInitialServers() re.NoError(err) diff --git a/tools/pd-ctl/tests/global_test.go b/tools/pd-ctl/tests/global_test.go index 00987f2a8a1..1267e6ac825 100644 --- a/tools/pd-ctl/tests/global_test.go +++ b/tools/pd-ctl/tests/global_test.go @@ -60,7 +60,7 @@ func TestSendAndGetComponent(t *testing.T) { } cfg := server.NewTestSingleConfig(assertutil.CheckerWithNilAssert(re)) ctx, cancel := context.WithCancel(context.Background()) - svr, err := server.CreateServer(ctx, cfg, nil, handler) + svr, err := server.CreateServer(ctx, cfg, false, handler) re.NoError(err) err = svr.Run() re.NoError(err) diff --git a/tools/pd-ctl/tests/keyspace/keyspace_group_test.go b/tools/pd-ctl/tests/keyspace/keyspace_group_test.go index fff95856931..f916944df49 100644 --- a/tools/pd-ctl/tests/keyspace/keyspace_group_test.go +++ b/tools/pd-ctl/tests/keyspace/keyspace_group_test.go @@ -41,7 +41,7 @@ func TestKeyspaceGroup(t *testing.T) { re := require.New(t) ctx, cancel := context.WithCancel(context.Background()) defer cancel() - tc, err := pdTests.NewTestPDServiceCluster(ctx, 1) + tc, err := pdTests.NewTestClusterWithKeyspace(ctx, 1) re.NoError(err) defer tc.Destroy() err = tc.RunInitialServers() @@ -102,7 +102,7 @@ func TestSplitKeyspaceGroup(t *testing.T) { for i := range 129 { keyspaces = append(keyspaces, fmt.Sprintf("keyspace_%d", i)) } - tc, err := pdTests.NewTestPDServiceCluster(ctx, 3, func(conf *config.Config, _ string) { + tc, err := pdTests.NewTestClusterWithKeyspace(ctx, 3, func(conf *config.Config, _ string) { conf.Keyspace.PreAlloc = keyspaces }) re.NoError(err) @@ -157,7 +157,7 @@ func TestExternalAllocNodeWhenStart(t *testing.T) { for i := range 10 { keyspaces = append(keyspaces, fmt.Sprintf("keyspace_%d", i)) } - tc, err := pdTests.NewTestPDServiceCluster(ctx, 1, func(conf *config.Config, _ string) { + tc, err := pdTests.NewTestClusterWithKeyspace(ctx, 1, func(conf *config.Config, _ string) { conf.Keyspace.PreAlloc = keyspaces }) re.NoError(err) @@ -197,7 +197,7 @@ func TestSetNodeAndPriorityKeyspaceGroup(t *testing.T) { for i := range 10 { keyspaces = append(keyspaces, fmt.Sprintf("keyspace_%d", i)) } - tc, err := pdTests.NewTestPDServiceCluster(ctx, 3, func(conf *config.Config, _ string) { + tc, err := pdTests.NewTestClusterWithKeyspace(ctx, 3, func(conf *config.Config, _ string) { conf.Keyspace.PreAlloc = keyspaces }) re.NoError(err) @@ -301,7 +301,7 @@ func TestMergeKeyspaceGroup(t *testing.T) { for i := range 129 { keyspaces = append(keyspaces, fmt.Sprintf("keyspace_%d", i)) } - tc, err := pdTests.NewTestPDServiceCluster(ctx, 1, func(conf *config.Config, _ string) { + tc, err := pdTests.NewTestClusterWithKeyspace(ctx, 1, func(conf *config.Config, _ string) { conf.Keyspace.PreAlloc = keyspaces }) re.NoError(err) @@ -420,7 +420,7 @@ func TestKeyspaceGroupState(t *testing.T) { for i := range 10 { keyspaces = append(keyspaces, fmt.Sprintf("keyspace_%d", i)) } - tc, err := pdTests.NewTestPDServiceCluster(ctx, 1, func(conf *config.Config, _ string) { + tc, err := pdTests.NewTestClusterWithKeyspace(ctx, 1, func(conf *config.Config, _ string) { conf.Keyspace.PreAlloc = keyspaces }) re.NoError(err) @@ -511,7 +511,7 @@ func TestShowKeyspaceGroupPrimary(t *testing.T) { for i := range 10 { keyspaces = append(keyspaces, fmt.Sprintf("keyspace_%d", i)) } - tc, err := pdTests.NewTestPDServiceCluster(ctx, 1, func(conf *config.Config, _ string) { + tc, err := pdTests.NewTestClusterWithKeyspace(ctx, 1, func(conf *config.Config, _ string) { conf.Keyspace.PreAlloc = keyspaces }) re.NoError(err) diff --git a/tools/pd-ctl/tests/keyspace/keyspace_test.go b/tools/pd-ctl/tests/keyspace/keyspace_test.go index 6a523ced7b8..bb82fa437d1 100644 --- a/tools/pd-ctl/tests/keyspace/keyspace_test.go +++ b/tools/pd-ctl/tests/keyspace/keyspace_test.go @@ -49,7 +49,7 @@ func TestKeyspace(t *testing.T) { for i := 1; i < 10; i++ { keyspaces = append(keyspaces, fmt.Sprintf("keyspace_%d", i)) } - tc, err := pdTests.NewTestPDServiceCluster(ctx, 3, func(conf *config.Config, _ string) { + tc, err := pdTests.NewTestClusterWithKeyspace(ctx, 3, func(conf *config.Config, _ string) { conf.Keyspace.PreAlloc = keyspaces }) re.NoError(err) @@ -155,7 +155,7 @@ func (suite *keyspaceTestSuite) SetupTest() { suite.ctx, suite.cancel = context.WithCancel(context.Background()) re.NoError(failpoint.Enable("github.com/tikv/pd/server/delayStartServerLoop", `return(true)`)) re.NoError(failpoint.Enable("github.com/tikv/pd/pkg/keyspace/skipSplitRegion", "return(true)")) - tc, err := pdTests.NewTestPDServiceCluster(suite.ctx, 1) + tc, err := pdTests.NewTestClusterWithKeyspace(suite.ctx, 1) re.NoError(err) re.NoError(tc.RunInitialServers()) tc.WaitLeader() diff --git a/tools/pd-simulator/main.go b/tools/pd-simulator/main.go index 59a58f0a00b..bf8bb298c54 100644 --- a/tools/pd-simulator/main.go +++ b/tools/pd-simulator/main.go @@ -121,7 +121,7 @@ func NewSingleServer(ctx context.Context, simConfig *sc.SimConfig) (*server.Serv log.Fatal("setup logger error", zap.Error(err)) } - s, err := server.CreateServer(ctx, simConfig.ServerConfig, nil, api.NewHandler) + s, err := server.CreateServer(ctx, simConfig.ServerConfig, false, api.NewHandler) if err != nil { panic("create server failed") }