Commit Graph

1514 Commits

Author SHA1 Message Date
Steven Allen
d3594835c4 [WIP] Network upgrade support
This patch starts adding support for network upgrades.

* It adds an actors abstraction layer for loading abstract (cross-version) actors.
* It starts switching over to a shared deadline type.
* It adds an abstraction for ADTs (hamt/amt).
* It removes the callback-based API in the StateManager (difficult to abstract
across actor versions).
* It _does not_ actually add support for actors v2. We can do that in a followup
patch but that should be relatively easy.

This patch is heavily WIP and does not compile. Feel free to push changes
directly to this branch.

Notes:

* State tree access now needs a network version, because the HAMT type will change.
* I haven't figured out a nice way to abstract over changes to the _message_
types. However, many of them will be type aliased to actors v0 in actors v2 so
we can likely continue using the v0 versions (or use the v2 versions
everywhere). I've been renaming imports to `v0*` to make it clear that we're
importing types from a _specific_ actors version.

TODO:

* Consider merging incremental improvements? We'd have to get this compiling
again first but we could merge in the new abstractions, and slowly switch over.
* Finish migrating to the new abstractions.
* Remove all actor state types from the public API. See `miner.State.Info()` for
the planned approach here.
* Fix the tests. This is likely going to be a massive pain.
2020-09-11 20:16:29 -07:00
Jakub Sztandera
d5aef296ea
Increase the FeeCap estimation to 20 blocks in a future
FeeCap will be set to 10x the current running rate

Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-09-11 21:59:51 +02:00
Łukasz Magiera
eaf9ebc2ca
Merge pull request #3752 from filecoin-project/fix/mpool-replace-auto
Fix mpool replace --auto
2020-09-11 11:12:35 +02:00
whyrusleeping
72eb17d314 wire skip old messages option through the api 2020-09-10 17:40:47 -07:00
whyrusleeping
0e3dd3cb3b Add faster and slimmer option to chain export via lotus-shed 2020-09-10 17:28:25 -07:00
Jakub Sztandera
2865a0367b
Fix mpool replace --auto
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-09-11 00:59:57 +02:00
Aayush Rajasekaran
774e068436 Update to specs-actors v0.9.8 2020-09-10 17:41:55 -04:00
Jakub Sztandera
c71e1adc93 Integrate multiple drand networks with pubsub
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-09-10 17:41:55 -04:00
Jakub Sztandera
64fa6fd9e5 Draw the rest of the owl
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-09-10 17:41:55 -04:00
Jakub Sztandera
2d3f92aeed Introduce beacon Schedule
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-09-10 17:41:55 -04:00
Łukasz Magiera
9e9856bb45
Merge pull request #3590 from filecoin-project/asr/multisig
Multisig API additions
2020-09-10 17:04:48 +02:00
Łukasz Magiera
890e6280df
Merge pull request #3669 from filecoin-project/feat/independent-version-numbers
build: Separate API versions per node type
2020-09-10 17:00:32 +02:00
Aayush Rajasekaran
8807c75c51 Fix warn message 2020-09-09 18:17:05 -04:00
Aayush Rajasekaran
5c852e26c2 Add a SyncUnmarkBad API 2020-09-09 14:34:05 -04:00
Aayush Rajasekaran
35aa78dad9 Allow marking a certain tipset as checkpointed 2020-09-09 14:34:00 -04:00
Łukasz Magiera
cb3b0ab2bb Merge remote-tracking branch 'origin/master' into blocksync-refactor 2020-09-09 19:19:05 +02:00
Łukasz Magiera
e91ee9f62a Fix lint 2020-09-09 12:18:02 +02:00
Łukasz Magiera
f695c0c164 gas: Add tests to median premium math 2020-09-09 12:14:46 +02:00
Łukasz Magiera
2aba16e2c9 gas: Fix median calc 2020-09-09 11:41:02 +02:00
Łukasz Magiera
38863d3025 build: Separate API versions per node type 2020-09-08 21:14:53 +02:00
Jakub Sztandera
46d3769a44
Add peer to peer manager before fetching the tipset
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-09-08 20:13:16 +02:00
Raúl Kripalani
b33db9c1ab Merge branch 'master' into blocksync-refactor 2020-09-08 14:22:43 +01:00
Aayush Rajasekaran
c77f5f6252
Revert "only subscribe to pubsub topics once we are synced" 2020-09-08 00:32:26 -04:00
Aayush Rajasekaran
6eea5dd109 Update to specs 0.9.7 and markets 0.6.0 2020-09-07 17:11:32 -04:00
hannahhoward
2db4b57013 feat(markets): upgrade markets 0.6.0 2020-09-07 15:48:42 -04:00
Aayush Rajasekaran
39755a294a Update to specs v0.9.6 2020-09-07 15:48:41 -04:00
Łukasz Magiera
2080458f0d
Merge pull request #3518 from filecoin-project/feat/pubsub-red
integrate pubsub Random Early Drop
2020-09-07 21:42:14 +02: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
453e826a0f rename p2p protocol to /fil/chain/xchg/0.0.1 (backwards-compatible); rename more. 2020-09-07 19:45:34 +01:00
Raúl Kripalani
55b1456d45 blocksync: introduce interfaces; rename to chainexchange. 2020-09-07 19:31:43 +01:00
vyzo
0d0dd250ee use faster decay for bootstrappers 2020-09-07 19:54:38 +03:00
vyzo
e3aaedbc33 fix tests 2020-09-07 19:46:58 +03:00
vyzo
81e674ad36 subscribe early in bootstrappers and get rid of ugly test flag 2020-09-07 19:46:35 +03:00
vyzo
e33798ff90 rename variable for better semantics 2020-09-07 15:58:05 +03:00
vyzo
d9faff19a5 fix tests 2020-09-07 15:55:53 +03:00
vyzo
4f0ab4f226 remove notifee after subscribing 2020-09-07 15:55:53 +03:00
vyzo
05740e0f64 silence linter for unnecessary conversion 2020-09-07 15:55:53 +03:00
vyzo
666dc65b8e only subscribed to pubsub topics once we are synced 2020-09-07 15:55:53 +03:00
vyzo
c616958557 specify topic delivery weights, with priority for blocks 2020-09-07 13:40:48 +03:00
vyzo
453ab95e54 enable pubsub RED 2020-09-07 13:40:48 +03:00
Aayush Rajasekaran
d0ccb54aba Msig: Add RPC endpoints to propose, approve, or cancel adding signers 2020-09-06 01:52:30 -04:00
Aayush Rajasekaran
aaad01105e Msig: Introduce an API & CLI to calculate amount that vests between 2 tipsets 2020-09-05 23:42:31 -04:00
Łukasz Magiera
c767e5ebed
Merge pull request #3547 from filecoin-project/feat/paych-status-addr
paych: get available funds by address or by from/to
2020-09-05 21:55:08 +02:00
Łukasz Magiera
16bd0d134e
Merge pull request #3556 from filecoin-project/fix/pubsub-reduce-gossipfactor
adjust gossipsub gossip factor
2020-09-05 21:49:32 +02:00
Jakub Sztandera
2adb80729b
Add additional info about gas premium
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-09-05 15:17:55 +02:00
Raúl Kripalani
35a8f7ebca Merge branch 'master' into inmem-journal 2020-09-04 21:02:28 +01:00
vyzo
1c27a0c1cf adjust gossipsub gossip factor 2020-09-04 22:04:48 +03:00
Jakub Sztandera
114c0ea85c
Fix GasPremium capping logic
Cap it just to FeeCap, there is no reason to cap it proportionally

Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-09-04 15:42:12 +02:00
Dirk McCormick
51ef39592f feat: paych - get available funds by address or by from/to 2020-09-04 13:44:09 +02:00
Raúl Kripalani
1ec534d607 Merge branch 'master' into inmem-journal 2020-09-04 10:55:40 +01:00
Łukasz Magiera
d81feb05d1
Merge pull request #3527 from filecoin-project/feat/watch-option-miner-storage-deals-list
Add watch option to storage-deals list
2020-09-04 04:13:01 +02:00
Łukasz Magiera
ce8bcf7932 Add agent flag to net peers 2020-09-04 02:00:53 +02:00
Whyrusleeping
021f4a881c
Merge pull request #3448 from filecoin-project/feat/paych-get-avail-funds
paych: Add PaychAvailableFunds API method
2020-09-03 15:26:25 -07:00
Łukasz Magiera
86cb865fdd Make chain export ~1000x times faster 2020-09-03 21:56:35 +02:00
Ingar Shu
1608cd2d53
Add watch option to "lotus-miner storage-deals list" 2020-09-03 10:14:30 -07:00
Łukasz Magiera
10acc04ba5
Merge pull request #3497 from filecoin-project/feat/bandwidth-tracking
add apis and command to inspect bandwidth usage
2020-09-03 14:37:54 +02:00
Jakub Sztandera
d35b273dbf
Cap fees to reasonable level by default
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-09-03 13:49:50 +02:00
whyrusleeping
0e39d62c9d Appease the CI overlords 2020-09-02 16:31:41 -07:00
whyrusleeping
a59dadccc9 add apis and command to inspect bandwidth usage 2020-09-02 15:25:53 -07:00
Raúl Kripalani
3206f92063 Merge branch 'master' into inmem-journal 2020-09-02 19:50:52 +01:00
Raúl Kripalani
0b6a182a44 move InitJournalKey to the top; add godcs on invoke order. 2020-09-02 19:15:07 +01:00
Łukasz Magiera
5aeabe39b5
Merge pull request #3456 from filecoin-project/misc/account-for-premium
Account for GasPremium in GasEstimateFeeCap
2020-09-02 18:20:32 +02:00
whyrusleeping
09ebd1a557 allow exporting a number of recent chain state trees 2020-09-02 17:15:10 +02:00
Dirk McCormick
2c98bf0cc7 feat: PaychAvailableFunds API method 2020-09-02 14:31:32 +02:00
Jakub Sztandera
997d49b63f
Disable GC on chain badger datastore
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-09-01 20:39:58 +02:00
Jakub Sztandera
72fb6afae2
Account for GasPremium in GasEstimateFeeCap
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-09-01 20:35:29 +02:00
Aayush Rajasekaran
04a9822573
Merge pull request #3428 from filecoin-project/fix/estim-gas-price-one-msg
Fix GasEstimateGasPremium when there is only one message on chain
2020-08-31 20:01:02 -04:00
Aayush Rajasekaran
cfe5134375 Use Sign() to check zero-equality 2020-08-31 18:53:14 -04: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
Jakub Sztandera
56235aee90
Fix GasEstimateGasPremium when there is only one message on chain
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-08-31 18:12:06 +02:00
hannahhoward
0a36db06ed feat(markets): update to markets v0.5.8 2020-08-28 18:03:27 -07:00
Łukasz Magiera
953effcc43
Merge pull request #3350 from filecoin-project/fix/some-fsm-issues
Fix some fsm issues
2020-08-29 02:16:59 +02:00
Łukasz Magiera
84a632787c
Merge pull request #3313 from filecoin-project/feat/mpool-balance-tracking
Message Pool Rudimentary Spam Protection Measures
2020-08-28 22:35:30 +02:00
Łukasz Magiera
16f0daab90
Merge pull request #3379 from filecoin-project/feat/add-list-deals-watch-option
Add watch option to list-deals
2020-08-28 22:33:48 +02:00
Łukasz Magiera
4bcc71c68f
Merge pull request #3197 from filecoin-project/fix/paych-spendable-submit-voucher
paych: fix issue where `voucher spendable` fails for submitted vouchers
2020-08-28 22:05:04 +02:00
Ingar Shu
a4ded8c2b9
Add watch option to list-deals 2020-08-28 10:40:27 -07:00
Łukasz Magiera
20ffce5c0d Merge remote-tracking branch 'origin/master' into fix/some-fsm-issues 2020-08-28 16:47:25 +02:00
Łukasz Magiera
ec2bc0baf6
Merge pull request #3363 from filecoin-project/fix/pubsub-params-tweaking
tweak some pubsub parameters
2020-08-28 00:18:26 +02:00
Łukasz Magiera
6c7874c883 Merge remote-tracking branch 'origin/master' into fix/some-fsm-issues 2020-08-27 21:37:08 +02:00
vyzo
20fbd66c90 tweak some pubsub parameters
- increase Bootstapp prune backoff to 5min from the default 1min
- reduce opportunistic graft threshold to 3.5 to account for low peer scores
2020-08-27 21:12:38 +03:00
Jakub Sztandera
b27ee8241a
Add TODO note
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-08-27 19:05:37 +02:00
Jakub Sztandera
6e4889d340
Don't fail if could not resolved drand dnsaddr
Resolves https://github.com/filecoin-project/lotus/issues/3335

Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-08-27 17:50:16 +02:00
Łukasz Magiera
df635579c4 storagefsm: Handle sectors with expired deals better 2020-08-27 13:51:38 +02:00
Łukasz Magiera
99ecef89b8 gofmt 2020-08-27 12:41:24 +02:00
Łukasz Magiera
e236173417 miner: Print (pre)commit message cids in sector status 2020-08-27 12:40:19 +02:00
whyrusleeping
36ff37ba47 Wait until blocks show up full nodes 'head' before claiming block has been mined 2020-08-26 17:51:16 -07:00
hannahhoward
1cd49cec39 fix(client): insure cancelled context avoids lock 2020-08-26 10:59:07 -07:00
hannahhoward
10c1399474 fix(retrieval): resolve retrieval close event panic
Refactor ClientRetrieve command to remove the possibility of a send on close channel race condition
2020-08-26 10:48:23 -07:00
Raúl Kripalani
efdfd3ee3e Merge branch 'master' into inmem-journal 2020-08-26 16:38:23 +01:00
Raúl Kripalani
4e1ef09751 make journal a global var. 2020-08-26 16:09:37 +01:00
Łukasz Magiera
6d328c0a71
Merge pull request #3298 from filecoin-project/fix/flaky-mining-tests
improve flakiness of a few tests
2020-08-26 16:07:52 +02:00
vyzo
bedbdcaf13 give some score weight to the messages topic 2020-08-26 15:14:15 +03:00
whyrusleeping
91bb559bdf address another spot with the more certain mining fix 2020-08-25 17:06:45 -07:00
frrist
0d61e0d717 refactor(ctx): update to latest go-jsonrpc 2020-08-25 15:20:41 -07:00
whyrusleeping
d0585ca7bb improve flakiness of a few tests 2020-08-25 15:07:10 -07:00
Dirk McCormick
340d11be38 fix: check voucher spendable should take into account submitted vouchers 2020-08-25 12:51:29 +02:00
Łukasz Magiera
2f6f978cd5
Merge pull request #3111 from filecoin-project/fix/paych-addvchr-chk
paych: check To address is owned by wallet for inbound channels
2020-08-24 23:02:10 +02:00
Łukasz Magiera
ae19b8ebfd
Merge pull request #3146 from filecoin-project/feat/paych-cli-voucher-tests
paych: modify `lotus paych voucher best-spendable` to output _all_ best vouchers
2020-08-24 22:59:20 +02:00
Łukasz Magiera
9bc48a8867
Merge pull request #3198 from filecoin-project/fix/retrieval-streaming-cleanup
Retrieval CLI fixes
2020-08-24 22:47:09 +02:00
vyzo
fc34b86470 use DNS addr for tracer 2020-08-24 18:01:52 +03:00