core/rawdb: fix range deletion

This commit is contained in:
Gary Rong 2025-06-02 15:11:03 +08:00
parent dfff22431d
commit bd9ead8071

View file

@ -17,6 +17,8 @@
package rawdb package rawdb
import ( import (
"bytes"
"github.com/ethereum/go-ethereum/common" "github.com/ethereum/go-ethereum/common"
"github.com/ethereum/go-ethereum/ethdb" "github.com/ethereum/go-ethereum/ethdb"
"github.com/ethereum/go-ethereum/log" "github.com/ethereum/go-ethereum/log"
@ -158,7 +160,9 @@ func increaseKey(key []byte) []byte {
// Note, this method assumes the storage space with prefix `StateHistoryIndexPrefix` // Note, this method assumes the storage space with prefix `StateHistoryIndexPrefix`
// is exclusively occupied by the history indexing data! // is exclusively occupied by the history indexing data!
func DeleteStateHistoryIndex(db ethdb.KeyValueRangeDeleter) { func DeleteStateHistoryIndex(db ethdb.KeyValueRangeDeleter) {
if err := db.DeleteRange(StateHistoryIndexPrefix, increaseKey(StateHistoryIndexPrefix)); err != nil { start := StateHistoryIndexPrefix
limit := increaseKey(bytes.Clone(StateHistoryIndexPrefix))
if err := db.DeleteRange(start, limit); err != nil {
log.Crit("Failed to delete history index range", "err", err) log.Crit("Failed to delete history index range", "err", err)
} }
} }