Compare commits

..

2 Commits

Author SHA1 Message Date
joeylichang
1c8fb28c99 fix: change version db config 2024-10-15 10:25:10 +08:00
joeylichang
6d41ff8190 chore: delete debug info 2024-09-30 16:49:06 +08:00
8 changed files with 13 additions and 49 deletions

View File

@@ -415,10 +415,6 @@ func (vt *VersaTree) UpdateAccount(address common.Address, account *types.StateA
return vt.db.Put(vt.handler, address.Bytes(), data)
}
func (vt *VersaTree) WriteBatch(values map[string][]byte) error {
return vt.db.WriteBatch(vt.handler, values)
}
func (vt *VersaTree) UpdateStorage(address common.Address, key, value []byte) error {
if vt.address.Cmp(address) != 0 {
panic(fmt.Sprintf("address mismatch in get storage, expect: %s, actul: %s", vt.address.String(), address.String()))

View File

@@ -143,8 +143,6 @@ type Trie interface {
// to be moved to the stateWriter interface when the latter is ready.
UpdateContractCode(address common.Address, codeHash common.Hash, code []byte) error
WriteBatch(values map[string][]byte) error
// Hash returns the root hash of the trie. It does not write to the database and
// can be used even if the trie doesn't have one.
Hash() common.Hash

View File

@@ -417,14 +417,11 @@ func (s *stateObject) updateTrie() (Trie, error) {
}
dirtyStorage[key] = v
}
//storages := make(map[string][]byte)
var wg sync.WaitGroup
wg.Add(1)
go func() {
defer wg.Done()
for key, value := range dirtyStorage {
//TODO:: add version schema check
if len(value) == 0 {
if err := tr.DeleteStorage(s.address, key[:]); err != nil {
s.db.setError(err)
@@ -436,16 +433,6 @@ func (s *stateObject) updateTrie() (Trie, error) {
}
s.db.StorageUpdated += 1
}
//if len(value) == 0 {
// storages[string(key[:])] = nil
//} else {
// v, _ := rlp.EncodeToBytes(value)
// storages[string(key[:])] = v
//}
//if err := tr.WriteBatch(storages); err != nil {
// s.db.setError(err)
//}
// Cache the items for preloading
usedStorage = append(usedStorage, common.CopyBytes(key[:]))
}

View File

@@ -692,7 +692,6 @@ func (s *StateDB) updateStateObject(obj *stateObject) {
if err := s.trie.UpdateAccount(addr, &obj.data); err != nil {
s.setError(fmt.Errorf("updateStateObject (%x) error: %v", addr[:], err))
}
if obj.dirtyCode {
s.trie.UpdateContractCode(obj.Address(), common.BytesToHash(obj.CodeHash()), obj.code)
}
@@ -720,7 +719,6 @@ func (s *StateDB) deleteStateObject(obj *stateObject) {
}
// Delete the account from the trie
addr := obj.Address()
if err := s.trie.DeleteAccount(addr); err != nil {
s.setError(fmt.Errorf("deleteStateObject (%x) error: %v", addr[:], err))
}

View File

@@ -31,11 +31,6 @@ func NewEmptyTrie() *EmptyTrie {
return &EmptyTrie{}
}
func (t *EmptyTrie) WriteBatch(values map[string][]byte) error {
panic("EmptyTrie not support WriteBatch")
return nil
}
func (t *EmptyTrie) GetKey(shaKey []byte) []byte {
return nil
}

View File

@@ -73,11 +73,6 @@ func NewStateTrie(id *ID, db database.Database) (*StateTrie, error) {
return &StateTrie{trie: *trie, db: db}, nil
}
func (t *StateTrie) WriteBatch(values map[string][]byte) error {
panic("StateTrie not support WriteBatch")
return nil
}
// MustGet returns the value for key stored in the trie.
// The value bytes must not be modified by the caller.
//

View File

@@ -69,11 +69,6 @@ func NewVerkleTrie(root common.Hash, db database.Database, cache *utils.PointCac
}, nil
}
func (t *VerkleTrie) WriteBatch(values map[string][]byte) error {
panic("VerkleTrie not support WriteBatch")
return nil
}
// GetKey returns the sha3 preimage of a hashed key that was previously used
// to store a value.
func (t *VerkleTrie) GetKey(key []byte) []byte {

View File

@@ -22,22 +22,22 @@ type VersionDB struct {
func New(config *Config) *VersionDB {
var (
//cfg *versa.VersaDBConfig
cfg *versa.VersaDBConfig
path = "./node/version_db" // TODO:: debug code
)
//if config != nil {
// path = config.Path
// cfg = &versa.VersaDBConfig{
// FlushInterval: 2000,
// MaxStatesInMem: 128,
// MemLowWaterMark: 10,
// MemHighWaterMark: 20,
// MemEvictInternal: 200,
// }
// _ = cfg
//}
db, err := versa.NewVersaDB(path, &versa.VersaDBConfig{})
if config != nil {
path = config.Path
cfg = &versa.VersaDBConfig{
FlushInterval: 6000,
MaxStatesInMem: 128,
}
_ = cfg
}
db, err := versa.NewVersaDB(path, &versa.VersaDBConfig{
FlushInterval: 6000,
MaxStatesInMem: 128,
})
if err != nil {
log.Crit("failed to new version db", "error", err)
}