From 50d4abc6763c57e78657c6ab8bda326200aa2471 Mon Sep 17 00:00:00 2001 From: Xiang Li Date: Wed, 17 Sep 2014 19:41:31 -0700 Subject: [PATCH] raft: add a one node bench --- raft/node_bench_test.go | 25 +++++++++++++++++++++++++ 1 file changed, 25 insertions(+) create mode 100644 raft/node_bench_test.go diff --git a/raft/node_bench_test.go b/raft/node_bench_test.go new file mode 100644 index 000000000..513aaaddb --- /dev/null +++ b/raft/node_bench_test.go @@ -0,0 +1,25 @@ +package raft + +import ( + "testing" + + "github.com/coreos/etcd/third_party/code.google.com/p/go.net/context" +) + +func BenchmarkOneNode(b *testing.B) { + ctx, cancel := context.WithCancel(context.Background()) + defer cancel() + + n := Start(1, []int64{1}, 0, 0) + defer n.Stop() + + n.Campaign(ctx) + for i := 0; i < b.N; i++ { + <-n.Ready() + n.Propose(ctx, []byte("foo")) + } + rd := <-n.Ready() + if rd.HardState.Commit != int64(b.N+1) { + b.Errorf("commit = %d, want %d", b.N+1) + } +}