3795cc2bd2
This paves the way for better object lifetime management. Concretely, it makes it possible to: - have different stores backing chain and state data. - having the same datastore library, but using different parameters. - attach different caching layers/policies to each class of data, e.g. sizing caches differently. - specifying different retention policies for chain and state data. This separation is important because: - access patterns/frequency of chain and state data are different. - state is derivable from chain, so one could never expunge the chain store, and only retain state objects reachable from the last finality in the state store. |
||
---|---|---|
.. | ||
dtypes | ||
helpers | ||
lp2p | ||
testing | ||
blockstore.go | ||
chain.go | ||
client.go | ||
core.go | ||
genesis.go | ||
graphsync.go | ||
ipfsclient.go | ||
mpoolnonceapi.go | ||
rpcstatemanager.go | ||
services.go | ||
stmgr.go | ||
storage.go | ||
storageminer.go |