From d54af34288f8ec3187c3019360509b6e88282c4a Mon Sep 17 00:00:00 2001 From: "Sascha L. Teichmann" Date: Mon, 11 Aug 2014 15:13:18 +0200 Subject: [PATCH] LevelDB: Seeked to start to get all the keys in HKEYS command. --- leveldb.go | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/leveldb.go b/leveldb.go index 6268d87..58124d7 100644 --- a/leveldb.go +++ b/leveldb.go @@ -158,13 +158,14 @@ func (ldbs *LevelDBSession) AllKeys(hash []byte) (keys chan []byte, n int, err e ro.SetFillCache(false) it := ldbs.backend.db.NewIterator(ro) + it.SeekToFirst() for ; it.Valid(); it.Next() { n++ } if err = it.GetError(); err != nil { - ro.Close() it.Close() + ro.Close() ldbs.backend.mutex.RUnlock() return } @@ -178,6 +179,7 @@ func (ldbs *LevelDBSession) AllKeys(hash []byte) (keys chan []byte, n int, err e defer close(keys) it := ldbs.backend.db.NewIterator(ro) defer it.Close() + it.SeekToFirst() for ; it.Valid(); it.Next() { keys <- it.Key() }