From 5d3847577fbd3fa56b48cfe3c29915e8970f62a5 Mon Sep 17 00:00:00 2001 From: ahrtr Date: Fri, 18 Feb 2022 06:47:59 +0800 Subject: [PATCH] always print the raft_term in decimal even flag --hex is provided --- CHANGELOG/CHANGELOG-3.6.md | 1 + etcdctl/ctlv3/command/printer_json.go | 2 +- tests/e2e/ctl_v3_member_test.go | 11 ++++++++--- 3 files changed, 10 insertions(+), 4 deletions(-) diff --git a/CHANGELOG/CHANGELOG-3.6.md b/CHANGELOG/CHANGELOG-3.6.md index 6d091dd73..154b5244d 100644 --- a/CHANGELOG/CHANGELOG-3.6.md +++ b/CHANGELOG/CHANGELOG-3.6.md @@ -20,6 +20,7 @@ See [code changes](https://github.com/etcd-io/etcd/compare/v3.5.0...v3.6.0). - Add command to generate [shell completion](https://github.com/etcd-io/etcd/pull/13133). - When print endpoint status, [show db size in use](https://github.com/etcd-io/etcd/pull/13639) +- [Always print the raft_term in decimal](https://github.com/etcd-io/etcd/pull/13711) when displaying member list in json. ### etcdutl v3 diff --git a/etcdctl/ctlv3/command/printer_json.go b/etcdctl/ctlv3/command/printer_json.go index ca90a4a31..4c75c85a8 100644 --- a/etcdctl/ctlv3/command/printer_json.go +++ b/etcdctl/ctlv3/command/printer_json.go @@ -67,7 +67,7 @@ func printMemberListWithHexJSON(r clientv3.MemberListResponse) { b = strconv.AppendUint(nil, r.Header.MemberId, 16) buffer.Write(b) buffer.WriteString("\",\"raft_term\":") - b = strconv.AppendUint(nil, r.Header.RaftTerm, 16) + b = strconv.AppendUint(nil, r.Header.RaftTerm, 10) buffer.Write(b) buffer.WriteByte('}') for i := 0; i < len(r.Members); i++ { diff --git a/tests/e2e/ctl_v3_member_test.go b/tests/e2e/ctl_v3_member_test.go index fe111424d..657b0eaf5 100644 --- a/tests/e2e/ctl_v3_member_test.go +++ b/tests/e2e/ctl_v3_member_test.go @@ -160,15 +160,20 @@ func memberListWithHexTest(cx ctlCtx) { if num == 0 { cx.t.Fatal("member number is 0") } + + if resp.Header.RaftTerm != hexResp.Header.RaftTerm { + cx.t.Fatalf("Unexpected raft_term, expected %d, got %d", resp.Header.RaftTerm, hexResp.Header.RaftTerm) + } + for i := 0; i < num; i++ { if resp.Members[i].Name != hexResp.Members[i].Name { - cx.t.Fatalf("member name,expected %v,got %v", resp.Members[i].Name, hexResp.Members[i].Name) + cx.t.Fatalf("Unexpected member name,expected %v, got %v", resp.Members[i].Name, hexResp.Members[i].Name) } if !reflect.DeepEqual(resp.Members[i].PeerURLs, hexResp.Members[i].PeerURLs) { - cx.t.Fatalf("member peerURLs,expected %v,got %v", resp.Members[i].PeerURLs, hexResp.Members[i].PeerURLs) + cx.t.Fatalf("Unexpected member peerURLs, expected %v, got %v", resp.Members[i].PeerURLs, hexResp.Members[i].PeerURLs) } if !reflect.DeepEqual(resp.Members[i].ClientURLs, hexResp.Members[i].ClientURLs) { - cx.t.Fatalf("member clientURLS,expected %v,got %v", resp.Members[i].ClientURLs, hexResp.Members[i].ClientURLs) + cx.t.Fatalf("Unexpected member clientURLS, expected %v, got %v", resp.Members[i].ClientURLs, hexResp.Members[i].ClientURLs) } } }