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. |
||
---|---|---|
.. | ||
actors | ||
beacon | ||
events | ||
exchange | ||
gen | ||
market | ||
messagepool | ||
messagesigner | ||
metrics | ||
state | ||
stmgr | ||
store | ||
sub | ||
types | ||
vectors | ||
vm | ||
wallet | ||
badtscache.go | ||
block_receipt_tracker.go | ||
checkpoint.go | ||
sync_manager_test.go | ||
sync_manager.go | ||
sync_test.go | ||
sync.go | ||
syncstate.go | ||
types_test.go |