lotus/blockstore
vyzo da0feb3fa4 dont mark references inline; instad rely on the main compaction thread to do concurrent marking
The problem is that it is possible that an inline marking might take minutes for some objects
(infrequent, but still possible for state roots and prohibitive if that's a block validation).
So we simply track references continuously and rely on the main compaction thread to trigger
concurrent marking for all references at opportune moments.

Assumption: we can mark references faster than they are created during purge or else we'll
never purge anything.
2021-07-09 15:10:02 +03:00
..
badger make badger Close-safe 2021-07-09 09:54:12 +03:00
splitstore dont mark references inline; instad rely on the main compaction thread to do concurrent marking 2021-07-09 15:10:02 +03:00
api.go rename blockstores for consistency. 2021-01-29 23:17:25 +00:00
blockstore.go BlockstoreIterator trait with implementation for badger 2021-07-04 18:38:28 +03:00
buffered.go add DeleteMany to Blockstore interface 2021-03-05 14:46:18 +02:00
doc.go refine docs. 2021-01-29 23:24:44 +00:00
fallback.go segregate chain and state blockstores. 2021-02-28 22:49:44 +00:00
idstore.go satisfy linter, use Prefix for common path of non inline CIDs 2021-03-05 14:46:18 +02:00
ipfs.go Merge branch 'master' into refactor/lib/blockstore 2021-02-28 19:55:23 +00:00
mem.go add DeleteMany to Blockstore interface 2021-03-05 14:46:18 +02:00
metrics.go segregate chain and state blockstores. 2021-02-28 22:49:44 +00:00
noop.go noop blockstore 2021-07-04 18:38:28 +03:00
sync.go add DeleteMany to Blockstore interface 2021-03-05 14:46:18 +02:00
timed_test.go rename blockstores for consistency. 2021-01-29 23:17:25 +00:00
timed.go fix: avoid holding a lock while calling the View callback 2021-03-11 20:03:38 -08:00
union_test.go implement blockstore.Union, a union blockstore. 2021-03-02 17:03:11 +00:00
union.go implement DeleteMany in union blockstore 2021-03-05 14:46:18 +02:00