Commit Graph

82 Commits

Author SHA1 Message Date
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
b0cbc932bd consolidate all blockstores in blockstore package. 2021-01-29 20:01:00 +00:00
Aayush Rajasekaran
adee4b2a5e Setup remainder msig signers when parsing genesis template 2020-11-18 02:56:30 -05:00
Łukasz Magiera
a1e1b03ca4 Optionally allow bitswap for chainstore 2020-11-03 23:44:44 +01: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
e803cf151f introduce separate state-tree versions
Instead of versioning the state tree along with the actors, version it
separately. This structure may not upgrade every time we update actors.
2020-10-07 12:04:32 -07:00
Aayush Rajasekaran
f55b18eabe Add funds that have left FilReserve to circ supply 2020-10-05 23:54:57 -04:00
Steven Allen
87351fa35c move version to actors, from builtin
Otherwise, we're going to end up with an import cycle between the adt and this
version.
2020-09-25 12:49:39 -07:00
Steven Allen
1bf3b4989d rename imports to match actors code
`sed -i 's/\bv0\(\w\)\(\w*\)/\L\1\E\20/g' **/*.go`
2020-09-18 14:59:27 -07:00
Steven Allen
cc4d5306eb Progress 2020-09-14 15:43:12 -07:00
Łukasz Magiera
683a58195e More terraforming in chain/ 2020-09-14 14:46:38 +02:00
Łukasz Magiera
68097132fe Fix vm build 2020-09-14 13:45:20 +02:00
Aayush Rajasekaran
45011c0fad Use latest version if no upgrade height is specified 2020-09-07 17:43:14 -04:00
Aayush Rajasekaran
6eea5dd109 Update to specs 0.9.7 and markets 0.6.0 2020-09-07 17:11:32 -04:00
Aayush Rajasekaran
39755a294a Update to specs v0.9.6 2020-09-07 15:48:41 -04:00
Whyrusleeping
672269e9d6
Merge pull request #3269 from filecoin-project/feat/randomize-chain-ticket
randomize ticket in genesis creation
2020-08-24 11:59:04 -07:00
whyrusleeping
1447a66515 randomize ticket in genesis creation 2020-08-24 11:33:49 -07:00
whyrusleeping
27e3f8ee29 fix setup of burnt funds actor state 2020-08-22 18:53:44 -07:00
whyrusleeping
4bf7619d32 Actually set genesis remainder account balance 2020-08-20 18:59:16 -07:00
whyrusleeping
621d675938 fixup tests 2020-08-19 13:32:53 -07:00
whyrusleeping
2ab202a03d fixup ID allocation and a few other things 2020-08-19 12:54:33 -07:00
Sami Mäkelä
99e71badbf check that accounts aren't overwritten 2020-08-19 13:03:59 +03:00
Sami Mäkelä
e894f360a5 merge 2020-08-19 12:26:19 +03:00
Sami Mäkelä
63ad6bc325 need to merge 2020-08-19 12:25:38 +03:00
Łukasz Magiera
e47e51275a
Merge pull request #3138 from filecoin-project/feat/remainder
place the remainder of unallocated funds in a 'remainder' account
2020-08-18 23:52:19 +02:00
whyrusleeping
abca69b476 configurable remainder account 2020-08-18 14:30:49 -07:00
Łukasz Magiera
574a22de6c genesis: Set remainder account balance correctly 2020-08-18 22:52:25 +02:00
whyrusleeping
42730bcf1c handle potential overallocation 2020-08-18 10:56:54 -07:00
Łukasz Magiera
36d87eb8e9 more checks around genesis CID 2020-08-18 15:04:31 +02:00
Sami Mäkelä
4ae02ef1b9 looks like it's working 2020-08-18 13:58:32 +03:00
Sami Mäkelä
88fbc044b3 adding actors for genesis msig addresses 2020-08-18 13:58:29 +03:00
whyrusleeping
64e18131c1 place the remainder of unallocated funds in a 'remainder' account 2020-08-17 23:38:58 -07:00
whyrusleeping
13e5b72cdb proper genesis block history
Commit hash originally stamped into the ethereum blockchain:
https://etherscan.io/tx/0xe8f51c9eefb682cd866f059462577b6dd3d2685ff4b6437f6c940ff4f4aaf067
2020-08-17 21:13:43 -07:00
Aayush Rajasekaran
fe2da35a45 Move GetCircSupply out of the vm, and into stmgr 2020-08-12 15:32:07 -04:00
Jakub Sztandera
722d6e8ffb
Introduce base fee
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-08-06 21:14:38 +02:00
Aayush Rajasekaran
b51e2a868b
Merge branch 'next' into feat/cid-builder 2020-07-28 21:02:30 -04:00
Aayush Rajasekaran
de867d7a9a Correct calculation of TotalCircSupply 2020-07-28 17:26:55 -04:00
Łukasz Magiera
927ee2406a Downgrade actors, get tests to pass 2020-07-28 19:51:58 +02:00
Łukasz Magiera
09b90773d8 Merge remote-tracking branch 'origin/next' into feat/cid-builder 2020-07-28 16:06:06 +02:00
Łukasz Magiera
09eb3731f2 Fix duplicate vm setup in genesis 2020-07-28 15:38:13 +02:00
Jose Pablo Fernandez
834ce171d3
Merge branch 'next' into feat/genesis-rootkey 2020-07-28 11:53:00 +02:00
Sami Mäkelä
15481e63dd merge 2020-07-24 12:34:48 +03: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
Aayush Rajasekaran
5a6e12dc97 Genesis miners need to be registered in the market actor's balance table 2020-07-23 20:34:27 -04:00
Aayush Rajasekaran
e8837688a2 update specs actors 2020-07-23 16:44:09 -04:00
Steven Allen
5fc83f4d05 Refactor to use actor adt types instead of directly using HAMTs and AMTs
This way there's a single source of truth. Preparation for fixing
https://github.com/filecoin-project/specs-actors/issues/517 (requires changing
HAMT parameters).
2020-07-23 09:34:57 -07:00
Łukasz Magiera
d70edbcb7c Set things on syscallShim 2020-07-22 13:35:10 -04:00
Sami Mäkelä
2780b57f83 Merge branch 'next' of github.com:filecoin-project/lotus into feat/genesis-rootkey 2020-07-22 11:48:04 +03:00
Jakub Sztandera
bb33994219
Make reward actor state in genesis more realistic
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-07-20 17:59:05 +02:00
Sami Mäkelä
287bfd9fb2 merge 2020-07-20 18:36:06 +03:00