Skip to content

Commit

Permalink
cmd/geth, trie: report on trie cache unloads, also add debug log
Browse files Browse the repository at this point in the history
  • Loading branch information
karalabe committed Oct 19, 2016
1 parent 5d9bb0a commit 88a593d
Show file tree
Hide file tree
Showing 3 changed files with 11 additions and 1 deletion.
3 changes: 2 additions & 1 deletion cmd/geth/chaincmd.go
Original file line number Diff line number Diff line change
Expand Up @@ -99,7 +99,8 @@ func importChain(ctx *cli.Context) error {
utils.Fatalf("Failed to read database stats: %v", err)
}
fmt.Println(stats)
fmt.Printf("Trie cache misses: %d\n\n", trie.CacheMisses())
fmt.Printf("Trie cache misses: %d\n", trie.CacheMisses())
fmt.Printf("Trie cache unloads: %d\n\n", trie.CacheUnloads())

// Compact the entire database to more accurately measure disk io and print the stats
start = time.Now()
Expand Down
2 changes: 2 additions & 0 deletions core/state/statedb.go
Original file line number Diff line number Diff line change
Expand Up @@ -564,6 +564,8 @@ func (s *StateDB) Commit() (root common.Hash, err error) {
func (s *StateDB) CommitBatch() (root common.Hash, batch ethdb.Batch) {
batch = s.db.NewBatch()
root, _ = s.commit(batch)

glog.V(logger.Debug).Infof("Trie cache stats: %d misses, %d unloads", trie.CacheMisses(), trie.CacheUnloads())
return root, batch
}

Expand Down
7 changes: 7 additions & 0 deletions trie/trie.go
Original file line number Diff line number Diff line change
Expand Up @@ -47,6 +47,13 @@ func CacheMisses() int64 {
return cacheMissCounter.Count()
}

// CacheUnloads retrieves a global counter measuring the number of cache unloads
// the trie did since process startup. This isn't useful for anything apart from
// trie debugging purposes.
func CacheUnloads() int64 {
return cacheUnloadCounter.Count()
}

func init() {
sha3.NewKeccak256().Sum(emptyState[:0])
}
Expand Down

0 comments on commit 88a593d

Please sign in to comment.