vyzo
5d6398f20e
hook the upgrade schedule to splitstore start
2021-12-03 12:11:54 +02:00
Aayush Rajasekaran
c3c46e9097
Fix Drand fetching around null tipsets
2021-09-29 11:57:59 -04:00
Łukasz Magiera
95b128b7bc
chain: Cleanup consensus logic
2021-09-02 18:09:37 +02:00
Łukasz Magiera
9bd312881d
VMSys doesn't belong in chainstore
2021-07-27 15:30:23 +02:00
vyzo
839b00ab40
rename messagepool ProtectMessages to ForEachPendingMessage
2021-07-20 09:23:36 +03:00
vyzo
ebbaf23af8
support out-of-chain reference protection
2021-07-20 09:02:40 +03:00
Jakub Sztandera
d777680449
Fix mpool.GetActor for lite node
...
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2021-05-07 15:30:06 +02:00
Raúl Kripalani
b1b452bc0f
remove dependency from blockstore/splitstore => chain/store.
2021-03-05 14:46:18 +02:00
Raúl Kripalani
1a804fbdec
move splitstore into blockstore package.
2021-03-05 14:46:18 +02:00
vyzo
a586d42c3b
make hot store DI injectable in the split store, default to badger.
2021-03-05 14:46:17 +02:00
vyzo
622b4f7d9d
hook splitstore into DI
2021-03-05 14:46:17 +02: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
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
Peter Rabbitson
9334e73396
Snake a context through the Chain-blockstore creation
2021-01-04 15:27:52 +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
d7b4f92f1f
add context to ChainStore.
2020-11-16 15:52:19 +00:00
Peter Rabbitson
29817b6617
Remove all Chain GC wrappings/types
...
There is no practical way to do GC against the chainstore given the current
state of affairs: remove all GC-related types for the time being.
2020-11-12 06:49:53 +01:00
Raúl Kripalani
3577300aee
Merge branch 'master' into badger-viewable
2020-11-06 19:34:25 +00:00
Łukasz Magiera
a1e1b03ca4
Optionally allow bitswap for chainstore
2020-11-03 23:44:44 +01:00
Raúl Kripalani
d2e2322fd2
make the lotus node use the new native badger blockstore.
2020-11-01 13:01:26 +00:00
Steven Allen
0c2ec04c09
use upgrade schedule from node when getting the network name
...
It doesn't matter now, but may in the future.
2020-10-21 12:18:38 -07:00
Steven Allen
ddade32bd3
write bitswap blocks into a temporary, in-memory block cache
...
If they end up validating, we'll write them back to the underlying blockstore.
Otherwise, there's no reason to keep them.
2020-10-14 14:43:58 -07: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
Łukasz Magiera
ef28ebb14a
Ignition upgrades, much excite.
2020-09-25 23:55:37 -07:00
Raúl Kripalani
dd841f32db
syncer: make SyncManager an interface.
2020-09-14 21:58:59 +01:00
Jakub Sztandera
2d3f92aeed
Introduce beacon Schedule
...
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-09-10 17:41:55 -04:00
Aayush Rajasekaran
35aa78dad9
Allow marking a certain tipset as checkpointed
2020-09-09 14:34:00 -04:00
Raúl Kripalani
878ffafb51
rename other Chain{Exchange=>Bitswap}; fix ChainBlock{s=>S}ervice().
2020-09-07 20:20:23 +01:00
Raúl Kripalani
55b1456d45
blocksync: introduce interfaces; rename to chainexchange.
2020-09-07 19:31:43 +01:00
Jakub Sztandera
625c6951bb
Don't use context to close bitswap
...
Use just the Close
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-08-31 19:24:04 +02:00
Raúl Kripalani
efdc428d5d
keep storage-fsm (renamed to storage-sealing) and sector-storage in extern.
2020-08-17 14:26:18 +01:00
Raúl Kripalani
3c17cd655e
integrate extern/sector-storage into lotus proper.
2020-08-16 11:09:58 +01:00
Aayush Rajasekaran
d614135ebb
Check repo's genesis against baked-in genesis
2020-08-12 17:22:16 -04:00
Łukasz Magiera
73b8868046
gofmt
2020-08-06 03:32:59 +02:00
Łukasz Magiera
f8b8ecc0c3
Consensus filter
2020-08-06 03:16:39 +02:00
Steven Allen
b7a4dbb07f
Support inline CIDs
...
And use the new CidBuilder from the spec actors.
This patch does not switch over to inline CIDs by default, but paves the way.
2020-07-23 23:12:32 -07:00
Łukasz Magiera
d70edbcb7c
Set things on syscallShim
2020-07-22 13:35:10 -04:00
Łukasz Magiera
c73326e96d
fsrepo: Use LevelDB for metadata datastore
2020-06-01 20:13:07 +02:00
Jeromy
9804bd3c4c
add blockstore 'Has' caching
2020-05-16 11:31:14 -07:00
hannahhoward
a9866c757e
feat(deps): update go-fil-markets
...
Update to latest 0.2.0 release of go-fil-markets with less-blocking node io
2020-05-04 18:36:51 -07:00
Travis Person
c807469a5a
bitswap: disable provider ( #1620 )
...
Co-authored-by: Travis Person <travisperson@users.noreply.github.com>
2020-04-27 15:54:16 -07:00
Łukasz Magiera
bab352fb44
Wireup WinningPost validation
2020-04-17 16:47:19 +02:00
Jeromy
ef6fb1b756
rename beacon to randombeacon
2020-04-08 16:10:08 -07:00
Jeromy
7075eaba26
WIP: random beacon interface
...
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-04-07 15:32:23 -07:00
Łukasz Magiera
13f2c21e1d
Get network name from genesis
2020-04-01 01:15:49 +02:00
hannahhoward
f259bc6a09
feat(graphsync): unified graphsync instance
...
setup a single graphsync that loads from both the chainstore & client blockstore
2020-03-17 17:25:12 -07:00
whyrusleeping
d8dda1ee66
debugging test failure
2020-02-27 15:14:15 -08:00
whyrusleeping
df6e3e83bf
make it all build finally
2020-02-27 13:45:31 -08:00