Skip to content

Commit

Permalink
add mock pd client (talent-plan#36)
Browse files Browse the repository at this point in the history
* add mock pd client

Signed-off-by: Connor1996 <[email protected]>
  • Loading branch information
Connor1996 authored Feb 1, 2020
1 parent ac20c09 commit 2cf2dfd
Show file tree
Hide file tree
Showing 9 changed files with 794 additions and 459 deletions.
1 change: 1 addition & 0 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -1,4 +1,5 @@
.idea*
.vscode*
node/node
unikv/unikv
bin/*
Expand Down
49 changes: 4 additions & 45 deletions kv/pd/client.go
Original file line number Diff line number Diff line change
Expand Up @@ -41,16 +41,12 @@ type Client interface {
IsBootstrapped(ctx context.Context) (bool, error)
PutStore(ctx context.Context, store *metapb.Store) error
GetStore(ctx context.Context, storeID uint64) (*metapb.Store, error)
GetAllStores(ctx context.Context, excludeTombstone bool) ([]*metapb.Store, error)
GetClusterConfig(ctx context.Context) (*metapb.Cluster, error)
GetRegion(ctx context.Context, key []byte) (*metapb.Region, *metapb.Peer, error)
GetRegionByID(ctx context.Context, regionID uint64) (*metapb.Region, *metapb.Peer, error)
ReportRegion(*pdpb.RegionHeartbeatRequest)
AskBatchSplit(ctx context.Context, region *metapb.Region, count int) (*pdpb.AskBatchSplitResponse, error)
ReportBatchSplit(ctx context.Context, regions []*metapb.Region) error
GetGCSafePoint(ctx context.Context) (uint64, error)
StoreHeartbeat(ctx context.Context, stats *pdpb.StoreStats) error
SetRegionHeartbeatResponseHandler(h func(*pdpb.RegionHeartbeatResponse))
RegionHeartbeat(*pdpb.RegionHeartbeatRequest)
SetRegionHeartbeatResponseHandler(storeID uint64, h func(*pdpb.RegionHeartbeatResponse))
Close()
}

Expand Down Expand Up @@ -563,43 +559,6 @@ func (c *client) AskBatchSplit(ctx context.Context, region *metapb.Region, count
return resp, nil
}

func (c *client) ReportBatchSplit(ctx context.Context, regions []*metapb.Region) error {
var resp *pdpb.ReportBatchSplitResponse
err := c.doRequest(ctx, func(ctx context.Context, client pdpb.PDClient) error {
var err1 error
resp, err1 = client.ReportBatchSplit(ctx, &pdpb.ReportBatchSplitRequest{
Header: c.requestHeader(),
Regions: regions,
})
return err1
})
if err != nil {
return err
}
if herr := resp.Header.GetError(); herr != nil {
return errors.New(herr.String())
}
return nil
}

func (c *client) GetGCSafePoint(ctx context.Context) (uint64, error) {
var resp *pdpb.GetGCSafePointResponse
err := c.doRequest(ctx, func(ctx context.Context, client pdpb.PDClient) error {
var err1 error
resp, err1 = client.GetGCSafePoint(ctx, &pdpb.GetGCSafePointRequest{
Header: c.requestHeader(),
})
return err1
})
if err != nil {
return 0, err
}
if herr := resp.Header.GetError(); herr != nil {
return 0, errors.New(herr.String())
}
return resp.SafePoint, nil
}

func (c *client) StoreHeartbeat(ctx context.Context, stats *pdpb.StoreStats) error {
var resp *pdpb.StoreHeartbeatResponse
err := c.doRequest(ctx, func(ctx context.Context, client pdpb.PDClient) error {
Expand All @@ -619,11 +578,11 @@ func (c *client) StoreHeartbeat(ctx context.Context, stats *pdpb.StoreStats) err
return nil
}

func (c *client) ReportRegion(request *pdpb.RegionHeartbeatRequest) {
func (c *client) RegionHeartbeat(request *pdpb.RegionHeartbeatRequest) {
c.regionCh <- request
}

func (c *client) SetRegionHeartbeatResponseHandler(h func(*pdpb.RegionHeartbeatResponse)) {
func (c *client) SetRegionHeartbeatResponseHandler(_ uint64, h func(*pdpb.RegionHeartbeatResponse)) {
if h == nil {
h = func(*pdpb.RegionHeartbeatResponse) {}
}
Expand Down
Loading

0 comments on commit 2cf2dfd

Please sign in to comment.