From 108adb6a7aae788000fee10e455dceeaf7ac8035 Mon Sep 17 00:00:00 2001 From: jsvisa Date: Sun, 27 Aug 2023 08:19:55 +0800 Subject: [PATCH] ethdb: rewrite leveldb/pebble/memorydb notfound to ethdb.notfound Signed-off-by: jsvisa --- ethdb/leveldb/leveldb.go | 9 ++++++++- ethdb/memorydb/memorydb.go | 8 ++------ ethdb/pebble/pebble.go | 6 ++++++ 3 files changed, 16 insertions(+), 7 deletions(-) diff --git a/ethdb/leveldb/leveldb.go b/ethdb/leveldb/leveldb.go index c0e0eb250a..bc1a387959 100644 --- a/ethdb/leveldb/leveldb.go +++ b/ethdb/leveldb/leveldb.go @@ -191,6 +191,9 @@ func (db *Database) Has(key []byte) (bool, error) { func (db *Database) Get(key []byte) ([]byte, error) { dat, err := db.db.Get(key, nil) if err != nil { + if err == leveldb.ErrNotFound { + return nil, ethdb.ErrNotFound + } return nil, err } return dat, nil @@ -469,7 +472,11 @@ func (snap *snapshot) Has(key []byte) (bool, error) { // Get retrieves the given key if it's present in the snapshot backing by // key-value data store. func (snap *snapshot) Get(key []byte) ([]byte, error) { - return snap.db.Get(key, nil) + val, err := snap.db.Get(key, nil) + if err == leveldb.ErrNotFound { + return nil, ethdb.ErrNotFound + } + return val, err } // Release releases associated resources. Release should always succeed and can diff --git a/ethdb/memorydb/memorydb.go b/ethdb/memorydb/memorydb.go index f9f74322b5..f6c63c6028 100644 --- a/ethdb/memorydb/memorydb.go +++ b/ethdb/memorydb/memorydb.go @@ -32,10 +32,6 @@ var ( // invocation of a data access operation. errMemorydbClosed = errors.New("database closed") - // errMemorydbNotFound is returned if a key is requested that is not found in - // the provided memory database. - errMemorydbNotFound = errors.New("not found") - // errSnapshotReleased is returned if callers want to retrieve data from a // released snapshot. errSnapshotReleased = errors.New("snapshot released") @@ -98,7 +94,7 @@ func (db *Database) Get(key []byte) ([]byte, error) { if entry, ok := db.db[string(key)]; ok { return common.CopyBytes(entry), nil } - return nil, errMemorydbNotFound + return nil, ethdb.ErrNotFound } // Put inserts the given value into the key-value store. @@ -377,7 +373,7 @@ func (snap *snapshot) Get(key []byte) ([]byte, error) { if entry, ok := snap.db[string(key)]; ok { return common.CopyBytes(entry), nil } - return nil, errMemorydbNotFound + return nil, ethdb.ErrNotFound } // Release releases associated resources. Release should always succeed and can diff --git a/ethdb/pebble/pebble.go b/ethdb/pebble/pebble.go index 12a84cc91a..81ffdb5911 100644 --- a/ethdb/pebble/pebble.go +++ b/ethdb/pebble/pebble.go @@ -267,6 +267,9 @@ func (d *Database) Get(key []byte) ([]byte, error) { } dat, closer, err := d.db.Get(key) if err != nil { + if err == pebble.ErrNotFound { + return nil, ethdb.ErrNotFound + } return nil, err } ret := make([]byte, len(dat)) @@ -350,6 +353,9 @@ func (snap *snapshot) Has(key []byte) (bool, error) { func (snap *snapshot) Get(key []byte) ([]byte, error) { dat, closer, err := snap.db.Get(key) if err != nil { + if err == pebble.ErrNotFound { + return nil, ethdb.ErrNotFound + } return nil, err } ret := make([]byte, len(dat))