update api types, remove meta peer by id

Signed-off-by: R.I.Pienaar <rip@devco.net>
This commit is contained in:
R.I.Pienaar
2021-03-02 15:11:56 +01:00
parent 29421bde67
commit a9ed69a2df
2 changed files with 12 additions and 12 deletions

View File

@@ -448,19 +448,19 @@ type JSApiLeaderStepDownResponse struct {
const JSApiLeaderStepDownResponseType = "io.nats.jetstream.api.v1.meta_leader_stepdown_response"
// JSApiLeaderServerRemoveRequest will remove a peer from the system.
type JSApiLeaderServerRemoveRequest struct {
// Server name of the peer to be removed.
// JSApiMetaServerRemoveRequest will remove a peer from the meta group.
type JSApiMetaServerRemoveRequest struct {
// Server ID of the peer to be removed.
Server string `json:"peer"`
}
// JSApiLeaderServerRemoveResponse is the response to a metaleader peer removal request.
type JSApiLeaderServerRemoveResponse struct {
// JSApiMetaServerRemoveResponse is the response to a peer removal request in the meta group.
type JSApiMetaServerRemoveResponse struct {
ApiResponse
Success bool `json:"success,omitempty"`
}
const JSApiLeaderServerRemovalResponseType = "io.nats.jetstream.api.v1.meta_leader_server_removal"
const JSApiMetaServerRemoveResponseType = "io.nats.jetstream.api.v1.meta_server_remove_response"
// JSApiMsgGetRequest get a message request.
type JSApiMsgGetRequest struct {
@@ -1799,7 +1799,7 @@ func (s *Server) jsLeaderServerRemoveRequest(sub *subscription, c *client, subje
return
}
var resp = JSApiLeaderServerRemoveResponse{ApiResponse: ApiResponse{Type: JSApiLeaderServerRemovalResponseType}}
var resp = JSApiMetaServerRemoveResponse{ApiResponse: ApiResponse{Type: JSApiMetaServerRemoveResponseType}}
if isEmptyRequest(msg) {
resp.Error = jsBadRequestErr
@@ -1807,7 +1807,7 @@ func (s *Server) jsLeaderServerRemoveRequest(sub *subscription, c *client, subje
return
}
var req JSApiLeaderServerRemoveRequest
var req JSApiMetaServerRemoveRequest
if err := json.Unmarshal(msg, &req); err != nil {
resp.Error = jsInvalidJSONErr
s.sendAPIErrResponse(ci, acc, subject, reply, string(msg), s.jsonResponse(&resp))
@@ -1818,7 +1818,7 @@ func (s *Server) jsLeaderServerRemoveRequest(sub *subscription, c *client, subje
js.mu.RLock()
for _, p := range cc.meta.Peers() {
si, ok := s.nodeToInfo.Load(p.ID)
if ok && si.(*nodeInfo).name == req.Server {
if ok && si.(*nodeInfo).id == req.Server {
found = p.ID
break
}

View File

@@ -2919,7 +2919,7 @@ func TestJetStreamClusterPeerRemovalAPI(t *testing.T) {
defer nc.Close()
// Expect error if unknown peer
req := &JSApiLeaderServerRemoveRequest{Server: "S-9"}
req := &JSApiMetaServerRemoveRequest{Server: "S-9"}
jsreq, err := json.Marshal(req)
if err != nil {
t.Fatalf("Unexpected error: %v", err)
@@ -2928,7 +2928,7 @@ func TestJetStreamClusterPeerRemovalAPI(t *testing.T) {
if err != nil {
t.Fatalf("Unexpected error: %v", err)
}
var resp JSApiLeaderServerRemoveResponse
var resp JSApiMetaServerRemoveResponse
if err := json.Unmarshal(rmsg.Data, &resp); err != nil {
t.Fatalf("Unexpected error: %v", err)
}
@@ -2941,7 +2941,7 @@ func TestJetStreamClusterPeerRemovalAPI(t *testing.T) {
t.Fatalf("Unexpected error: %v", err)
}
req = &JSApiLeaderServerRemoveRequest{Server: "S-2"}
req = &JSApiMetaServerRemoveRequest{Server: c.serverByName("S-2").ID()}
jsreq, err = json.Marshal(req)
if err != nil {
t.Fatalf("Unexpected error: %v", err)