From 994e8e4f40397aca54640af52d763d250693919e Mon Sep 17 00:00:00 2001 From: Gyu-Ho Lee Date: Fri, 21 Oct 2016 11:02:09 -0700 Subject: [PATCH] mvcc: test inflight Hash to trigger Size on nil db --- mvcc/kvstore_test.go | 14 ++++++++++++++ 1 file changed, 14 insertions(+) diff --git a/mvcc/kvstore_test.go b/mvcc/kvstore_test.go index 6fb1adf5cf2..72c2ca9cb2d 100644 --- a/mvcc/kvstore_test.go +++ b/mvcc/kvstore_test.go @@ -532,6 +532,20 @@ func newTestKeyBytes(rev revision, tombstone bool) []byte { return bytes } +// TestStoreHashAfterForceCommit ensures that later Hash call to +// closed backend with ForceCommit does not panic. +func TestStoreHashAfterForceCommit(t *testing.T) { + be, tmpPath := backend.NewDefaultTmpBackend() + kv := NewStore(be, &lease.FakeLessor{}, nil) + defer os.Remove(tmpPath) + + // as in EtcdServer.HardStop + kv.Close() + be.Close() + + kv.Hash() +} + func newFakeStore() *store { b := &fakeBackend{&fakeBatchTx{ Recorder: &testutil.RecorderBuffered{},