ZenGround0
0c91b0dc10
feat:chain:splitstore chain prune ( #9056 )
...
* Splitstore chain prune
* Protect on reification for simpler logic and sound cold compact protect
* Recovery from checkpoint during chain prune
* Splitstore (discard and universal mode) running in itests
* Add pause and restart functions to itest block miner
* Add config options to itest full nodes
* Add FsRepo support for itest full ndoes
Co-authored-by: zenground0 <ZenGround0@users.noreply.github.com>
2022-08-05 16:34:16 -04:00
Masih H. Derkani
6f686cae11
Upgrade to go-blockstore 1.2.0
and go-cid 0.2.0
...
Upgrade required dependencies and fix breaking changes.
2022-06-29 14:55:22 -04:00
Łukasz Magiera
05cdeb80c3
chore: remove redundant import prefixes
2022-06-15 12:06:22 +02:00
Łukasz Magiera
e65fae28de
chore: fix imports
2022-06-14 17:00:51 +02:00
vyzo
c1d8368fdc
share a concurrent visitor between workers in markLiveRefs
2022-02-01 21:40:09 +02:00
vyzo
4b4104e400
fix comment
2022-02-01 12:10:30 +02:00
vyzo
9c92d77b64
improve robustness of waitForSync
2022-02-01 11:25:07 +02:00
vyzo
7b4ab2077b
wait for sync in a non racey way
2022-02-01 11:10:51 +02:00
vyzo
578b5691bc
check for closing after the sync wait
2022-02-01 10:59:08 +02:00
vyzo
6353fa72d8
decouple SyncGapTime from wait time
2022-02-01 10:55:15 +02:00
vyzo
fd07ca87ce
wait for the sync gap time befor starting the purge
2022-02-01 10:46:42 +02:00
vyzo
11ae85645b
optimize single object marking in markLiveRefs
2022-02-01 09:13:21 +02:00
vyzo
37673c6de6
downgrade marking log to debug
2022-01-31 21:44:10 +02:00
vyzo
7896af731f
use walkObjectIncomplete for marking live refs
2022-01-31 21:41:42 +02:00
vyzo
877dfbe992
hold the lock in the second protect call
2022-01-31 19:21:03 +02:00
vyzo
5b9ea1b4e0
avoid races in beginCriticalSection
2022-01-31 18:48:53 +02:00
vyzo
2b14bda6b8
recursively mark puts during the critical section
2022-01-31 17:26:08 +02:00
vyzo
1abfc5b1cf
fix comment
2022-01-31 15:00:03 +02:00
vyzo
c9bd5ec452
mark tipset references to protect them during critical section
2022-01-31 14:54:23 +02:00
vyzo
ee63be26a1
fix race in protectView
2022-01-31 12:40:26 +02:00
vyzo
a9d4495d83
use both hot and cold when doing fetches for markset positive objects
2022-01-30 22:47:20 +02:00
vyzo
7b8447a95a
reinstante waitForMissingRefs
2022-01-30 19:00:52 +02:00
vyzo
7931f1f8f9
fix lint
2022-01-30 15:43:52 +02:00
vyzo
dbc8903bac
sortless compaction
2022-01-30 15:33:15 +02:00
vyzo
45c2f34295
refactor marksets for critical section on-disk persistence
2022-01-28 15:41:33 +02:00
vyzo
f07ce297f6
optimize slice allocations in walk
2022-01-26 21:55:24 +02:00
vyzo
a87239e802
avoid extraneous assignment
2022-01-26 21:48:03 +02:00
vyzo
10f2445a99
use minimum of 2 workers
2022-01-25 21:37:48 +02:00
vyzo
8e01e73de4
dynamically compute number of workers for parallel chain walk
2022-01-25 19:47:58 +02:00
vyzo
7c8edf5632
parallelize walkChain
2022-01-25 17:29:02 +02:00
vyzo
25284b5325
refactor: eliminate distinction between markset and markset visitors
2022-01-25 16:31:45 +02:00
Aayush Rajasekaran
dfb65ed89f
Plumb contexts through
2021-12-11 17:04:00 -05:00
vyzo
489782e21b
satisfy the spellchecker that masquarades as a linter
2021-12-03 12:15:28 +02:00
vyzo
05c1325885
add logic for supressing compaction near upgrade boundaries
2021-12-03 11:50:35 +02:00
vyzo
b83b5405c6
widen MarkSetVisitor interface and get rid of the casts
2021-08-10 10:47:01 +03:00
vyzo
563fa1e31a
take advantage of MarkSet/Visitor unification to atomically check+mark
2021-08-10 10:47:01 +03:00
vyzo
32d94d4e85
reset walked set as epoch boundaries are crossed
...
the walk is BFS, so we can do this!
2021-08-10 10:47:01 +03:00
vyzo
49346f5679
use visitors instead of cidsets in walks
2021-08-10 10:47:01 +03:00
vyzo
f75d982c76
remove early occurs check from trackTxnRef
...
this happens inline, and it might block when using the badger markset
2021-07-23 12:47:18 +03:00
vyzo
5266b240b8
coalesce message and message receipt retention
2021-07-22 22:02:29 +03:00
vyzo
2a68ae8dad
fix warmup by decoupling state from message receipt walk
2021-07-22 20:49:36 +03:00
Łukasz Magiera
da5aeda197
Merge branch 'master' into feat/splitstore-hot-messages
2021-07-22 12:58:06 +02:00
vyzo
ebbaf23af8
support out-of-chain reference protection
2021-07-20 09:02:40 +03:00
vyzo
006050ed27
implement hotstore message retention policy
2021-07-17 08:59:43 +03:00
vyzo
5a23f64b3b
code reorg: break splitstore.go into smaller logical units
2021-07-14 13:11:15 -07:00