Raúl Kripalani
2047a74958
implement blockstore.Union, a union blockstore.
...
The union blockstore takes a list of blockstores. It returns the first
satisfying read, and broadcasts writes to all stores.
It can be used for operations that require reading from any two blockstores,
for example WalkSnapshot.
2021-03-02 17:03:11 +00:00
Raúl Kripalani
b1c348b4a7
address review comments.
2021-03-02 16:31:01 +00:00
Raúl Kripalani
3795cc2bd2
segregate chain and state blockstores.
...
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.
2021-02-28 22:49:44 +00:00
Raúl Kripalani
7f0f7d0b36
Merge branch 'master' into refactor/lib/blockstore
2021-02-28 19:55:23 +00:00
vyzo
5c6988a7c1
refactor coalescing logic into its own function, take both cancellation sets into account
2021-02-02 21:26:50 +02:00
Raúl Kripalani
d1104fec4c
rename blockstores for consistency.
2021-01-29 23:17:25 +00:00
Raúl Kripalani
b0cbc932bd
consolidate all blockstores in blockstore package.
2021-01-29 20:01:00 +00:00
Raúl Kripalani
a1da1dab85
add context to LockedRepo#Datastore().
2021-01-26 11:01:43 +00:00
Raúl Kripalani
ce3af308ed
Merge branch 'master' into chore/snake_context_through_blockstore_init
2021-01-25 19:31:41 +00:00
Łukasz Magiera
2b3d66da3b
Merge pull request #5362 from filecoin-project/feat/fullnode-restore
...
Implement full-node restore option
2021-01-18 23:42:20 +01:00
Lucas Molas
69eb2163d2
fix(sync): enforce fork len when changing head ( #5244 )
2021-01-18 12:34:25 -03:00
Łukasz Magiera
38f9559080
Implement full-node restore option
2021-01-15 20:57:32 +01:00
Peter Rabbitson
446a24ef3f
Fix forgotten test-call
2021-01-04 15:46:09 +01:00
Jakub Sztandera
13ff98416f
Fix cs.tipsets being unbounded
...
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-11-26 23:37:59 +01:00
Łukasz Magiera
54637d5093
Merge pull request #4767 from zgfzgf/feat-print-multiple-blocks
...
print multiple blocks from miner cid
2020-11-20 16:14:37 +01:00
Raúl Kripalani
0c6072a1a0
chainstore lifecycle: close via Close() instead of context.
2020-11-16 22:28:59 +00:00
Raúl Kripalani
bac51dd4e3
daemon --import-snapshot: force head silently, without triggering reorg.
2020-11-16 16:03:47 +00:00
Raúl Kripalani
d7b4f92f1f
add context to ChainStore.
2020-11-16 15:52:19 +00:00
Aayush Rajasekaran
1af1ceb1e0
Merge pull request #3646 from filecoin-project/feat/delayed-pubsub-subscribe
...
delayed pubsub subscribe for messages topic
2020-11-13 17:44:32 -05:00
Łukasz Magiera
99031bae17
Merge pull request #4709 from filecoin-project/feat/mute-logs
...
Make some logs quieter
2020-11-12 20:40:10 +01:00
Aayush Rajasekaran
735c04f999
Merge pull request #4681 from filecoin-project/badger-viewable
...
move to native badger blockstore; leverage zero-copy View() to deserialize in-place
2020-11-10 18:08:12 -05:00
Raúl Kripalani
38c404e04e
vm: construct CBOR store properly.
2020-11-10 15:49:33 +00:00
Raúl Kripalani
af7236f7e7
migrate direct usages blockstore.{Get=>View}.
2020-11-10 13:35:36 +00:00
vyzo
185653f85a
improve coalescing
2020-11-09 13:35:42 +02:00
zgfzgf
8c8396af59
print multiple blocks from miner
2020-11-09 10:57:36 +08:00
vyzo
378d7a1ad9
stupid linter
2020-11-06 22:26:47 +02:00
vyzo
9a76c648f1
unit test for head change coalescer
2020-11-06 22:26:47 +02:00
vyzo
08aab1c48a
make Close satisfy io.Closer
2020-11-06 22:26:24 +02:00
vyzo
9149ae2164
godoc and final dispatch when closing the coalescer
2020-11-06 22:26:24 +02:00
vyzo
ec13c5f80d
coalesce both reverts and applys in the same manner
2020-11-06 22:26:24 +02:00
vyzo
4058f5642f
head change coalescer
2020-11-06 22:26:24 +02:00
Jakub Sztandera
5a34e5b2bf
Merge pull request #4599 from filecoin-project/feat/sync-manager-redux
...
rewrite sync manager
2020-11-06 21:01:26 +01:00
Raúl Kripalani
3577300aee
Merge branch 'master' into badger-viewable
2020-11-06 19:34:25 +00:00
vyzo
32b7797394
only subscribe to messages topic if we are synced within 10 epochs
2020-11-05 18:08:13 +02:00
Raúl Kripalani
370ef93db6
chainstore: new ForceHeadSilent to support benchmarks.
2020-11-04 14:39:01 +00:00
Łukasz Magiera
a1e1b03ca4
Optionally allow bitswap for chainstore
2020-11-03 23:44:44 +01:00
Łukasz Magiera
9270ac6358
Make some logs quieter
2020-11-03 13:28:41 +01:00
Raúl Kripalani
099c4b5e1d
migrate repo.Datastore(/chain) to repo.Blockstore().
2020-11-01 13:03:21 +00:00
Jakub Sztandera
e575b5fe8a
Add error if weights are the same
...
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-10-28 16:53:13 +01:00
Jakub Sztandera
c7e6c8eacc
Fix flaky TestChainExportImportFull
...
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-10-23 21:45:08 +02:00
Łukasz Magiera
6b9a4c4a34
Merge pull request #4536 from filecoin-project/zgfzgf-fix-chain-export
...
Small chain export optimization
2020-10-22 17:35:58 +02:00
Łukasz Magiera
ae04f3029b
chain: Add more robust test for ChainExport
2020-10-22 16:01:11 +02:00
Steven Allen
4e730b5ec8
port to v2 imports
2020-10-21 12:16:23 -07:00
zgfzgf
b7726c4ca8
optimize walkSnapshot recurseLinks
2020-10-12 16:44:39 +08:00
Peter Rabbitson
23f5a99117
Add comment clarifying current codepath
2020-10-10 15:36:32 +02:00
Peter Rabbitson
85abca4b16
Delint
2020-10-10 04:00:12 +02:00
Peter Rabbitson
6610a247cf
Dump the block validation cache whenever we perform an import
...
This solves a problem with folks resurrecting long-out-of-sync nodes via
snapshot imports.
The interface switch to Batching is necessary: startup is too long otherwise
( 8 minutes just to clear everything on a relatively old node )
2020-10-10 03:41:04 +02:00
Steven Allen
748d2e82a7
unshare the journal
...
Motivation:
* Run lotus with the race detector enabled (primary motivation).
* Allow multiple lotus nodes in a process (not a high priority).
Previously, the journal was shared between all lotus instances, but it was
initialized for every new node. This caused safety problems in tests (at a
minimum).
This patch explicitly passes the journal to all services that need it.
2020-10-09 13:23:07 -07:00
Steven Allen
b1818a1055
fix base fee tests for different smoke heights
2020-10-06 13:12:16 -07:00
Steven Allen
256be285ba
only enable gas tampering if the breeze upgrade is enabled
2020-10-06 13:00:06 -07:00