The current trie memory database/cache that we do pruning on stores trie nodes as binary rlp encoded blobs, and also stores the node relationships/references for GC purposes. However, most of the trie nodes (everything apart from a value node) is in essence just a collection of references. This PR switches out the RLP encoded trie blobs with the collapsed-but-not-serialized trie nodes. This permits most of the references to be recovered from within the node data structure, avoiding the need to track them a second time (expensive memory wise). |
||
|---|---|---|
| .. | ||
| downloader | ||
| fetcher | ||
| filters | ||
| gasprice | ||
| tracers | ||
| api_backend.go | ||
| api_test.go | ||
| api_tracer.go | ||
| api.go | ||
| backend.go | ||
| bloombits.go | ||
| config.go | ||
| gen_config.go | ||
| handler_test.go | ||
| handler.go | ||
| helper_test.go | ||
| metrics.go | ||
| peer.go | ||
| protocol_test.go | ||
| protocol.go | ||
| sync_test.go | ||
| sync.go | ||