Commit Graph

4430 Commits

Author SHA1 Message Date
Łukasz Magiera
38f9559080 Implement full-node restore option 2021-01-15 20:57:32 +01:00
Łukasz Magiera
476df99179
Merge pull request #5341 from filecoin-project/feat/sectors-terminate
Sector termination support
2021-01-14 22:00:18 +01:00
Łukasz Magiera
80b8d4b9d7 Address review 2021-01-14 20:27:15 +01:00
Łukasz Magiera
49abdd7d7d Sector termination support - address review 2021-01-14 15:46:57 +01:00
Ian Davis
7d2adc383f
chore: export vm.ShouldBurn 2021-01-14 11:29:57 +00:00
Łukasz Magiera
b0bb36909b
Merge pull request #4192 from filecoin-project/schomatis/sync/remove-self-bypass
fix(sync): remove checks bypass when we submit the block
2021-01-12 14:52:50 +01:00
He Weidong
ab9b3b6851 enable parse and shorten negative FIL values 2021-01-09 17:48:36 +08:00
Łukasz Magiera
32dcfb4842
Merge pull request #5303 from filecoin-project/feat/wallet-market-info
Better CLI for wallet market withdraw and client info
2021-01-08 22:54:12 +01:00
Dirk McCormick
c58086ee27 feat: better CLI for wallet market withdraw and client info 2021-01-07 10:18:29 +01:00
Łukasz Magiera
72871597cd
Merge pull request #5293 from filecoin-project/fix/fund-mgr-nice-err
Better error message when withdrawing funds
2021-01-06 20:23:50 +01:00
Dirk McCormick
e8e4b559e9 fix: format fund manager message fil amounts 2021-01-06 09:23:54 +01:00
Dirk McCormick
3287c621ad fix: better withdrawal error message 2021-01-05 16:58:12 +01:00
Peter Rabbitson
446a24ef3f Fix forgotten test-call 2021-01-04 15:46:09 +01:00
Peter Rabbitson
9334e73396 Snake a context through the Chain-blockstore creation 2021-01-04 15:27:52 +01:00
Frank
7e0a2ca46e use deal duration from actor 2020-12-30 16:02:53 +08:00
Ruslan Tushov
f9aca39caf
Buffered stream for chainxchg response 2020-12-25 16:03:46 +03:00
Lucas Molas
461a3cdebc
fix(sync): enforce ForkLengthThreshold for synced chain (#5182) 2020-12-22 12:29:36 -03:00
Jakub Sztandera
c7e3e9fa7f
Add IsNearUpgrade
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-12-19 21:51:07 +01:00
Łukasz Magiera
c1aafb7b71 Add missing v9 to chain/actors/version 2020-12-19 21:29:12 +01:00
Jakub Sztandera
a3b325db5d
Disable consensus faults during upgrade orange
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-12-19 21:00:12 +01:00
Łukasz Magiera
24dd6e01d7 disable SF for finality epochs 2020-12-19 20:53:08 +01:00
Łukasz Magiera
22884f18f1 define v9 upgrade 2020-12-19 20:44:21 +01:00
Steven Allen
1f754bdb78 disable gas burning for window post messages
While over-estimation fees and miner tips are still paid, gas is no longer burnt
for direct, successful window PoSt messages.

Usually, gas is burnt to prevent an attacker from spamming the network and to
allow clients to "price" messages (using the base fee cap) based on how urgently
they need them to be processed. However:

1. Window PoSt is already a "proof of work".
2. Miners need to submit WindowedPoSts on-time so all window post messages are urgent.
3. Work is already under way to move window post verification off-chain (making
it effectively free). This change simply introduces the "free" part a bit earlier.
2020-12-16 00:10:25 -05:00
Łukasz Magiera
4767773d1b
Merge pull request #5171 from filecoin-project/raulk/block-delay-metric
add metrics for delayed blocks.
2020-12-10 17:12:12 +01:00
vyzo
e07059e73d fix PushUntrusted publishing -- the message is local 2020-12-10 17:26:41 +02:00
Raúl Kripalani
0570306bb6 add metrics for delayed blocks. 2020-12-10 14:52:05 +00:00
Steven Allen
a47b063a24 Fix duplicate nonce test
StateGetActor now gets the actor at the tipset parent state.
2020-12-09 11:29:41 -08:00
Steven Allen
b8e3808c4f Make state tipset usage consistent in the API
_Always_ (almost) use the tipset's parent state, instead of computing.

Exceptions:

* MinerGetBaseInfo. Fixing this would break things so we need to be
careful (although we could bump the API version, fix it, then fix the call
sites).
* StateReplay. This is replaying a message on top of the given tipset.
* GasEstimateGasLimit. This executes the message on-top-of the tipset's
computed state (unlike call which executes it on the tipset's parent state).
  * Having this method and Call apply the message at different heights is really
  weird.
2020-12-09 11:29:40 -08:00
Łukasz Magiera
e1be89b442
Merge pull request #5159 from iand/fix/event-hang
fix(events): avoid potential hang when starting event listener
2020-12-09 19:40:02 +01:00
Łukasz Magiera
bc9b5cb5fc
Merge pull request #5160 from iand/fix/unlock-event-mutex
fix(events): unlock mutex before error returns
2020-12-09 19:25:07 +01:00
Ian Davis
c6f5214657
fix(events): unlock mutex before error returns 2020-12-09 13:37:56 +00:00
Ian Davis
696469aae7
fix: avoid potential hang when starting event listener
It was possible for NewEvents to never return, blocked on waiting for a WaitGroup to be done.
The call to Done was in a goroutine that could exit before reaching the Done call.

Replace the WaitGroup with a channel that is closed to signal that initialisation is complete.
Also, while we are waiting on the channel, wait on the context so we can exit clealy if the
context is canceled.
2020-12-09 11:29:48 +00:00
Jakub Sztandera
6ca5caef31
Refactor DefaultMessageSendSpec
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-12-08 20:51:27 +01:00
Jakub Sztandera
689b93dc0e
messagepool: small refactor
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-12-08 20:07:13 +01:00
Łukasz Magiera
b190c3492a
Merge pull request #5099 from zgfzgf/feat-chain-gen
delete repeat call func
2020-12-03 13:23:39 +01:00
Travis Person
a584fcb935 sync: log a message when there aren't enough peers 2020-12-03 01:27:07 +00:00
zgfzgf
a415e49fdb delete repeat call func 2020-12-02 20:05:01 +08:00
Łukasz Magiera
bc14d0820f fix lint 2020-12-01 20:00:55 +01:00
Łukasz Magiera
b28ed5887c gofmt 2020-12-01 19:23:43 +01:00
Łukasz Magiera
be9f7b88b2 uint64 is too small 2020-12-01 19:15:39 +01:00
Łukasz Magiera
00e5ace818 Print basefee in miner info 2020-12-01 18:56:43 +01:00
Łukasz Magiera
82b5cb89cd
Merge pull request #5061 from filecoin-project/fix/err-late-deals
Error out deals that are not activated by proposed deal start epoch
2020-12-01 17:02:06 +01:00
Jakub Sztandera
f1291f137c
Enable Callers tracing when GasTracing is enabled
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-12-01 13:53:30 +01:00
Dirk McCormick
e02a366419 feat: error out deals that are not activated by proposed deal start epoch 2020-11-30 15:27:40 +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
zgfzgf
32c159fa3a fix lint check 2020-11-26 21:36:40 +08:00
zgfzgf
fad250058d fix wallet delete address where address is default 2020-11-26 20:55:29 +08:00
zgfzgf
15aa8e5253 fix wallet dead lock 2020-11-25 12:58:17 +08:00
Łukasz Magiera
a63ef1dcd5
Merge pull request #4984 from yaohcn/fix-log-warn
fix log format
2020-11-24 18:01:56 +01:00
Łukasz Magiera
5ed79fa73e
Merge pull request #4987 from zgfzgf/feat-batch-verify-seal-print
update index to sectorNumber
2020-11-24 17:55:34 +01:00
Łukasz Magiera
eb2be69ace
events: use %v to log errors 2020-11-24 17:51:19 +01:00
Łukasz Magiera
f850d77f1e
Merge pull request #4904 from filecoin-project/asr/genesis-remainder
Setup remainder msig signers when parsing genesis template
2020-11-24 17:06:17 +01:00
zgfzgf
1f9c0f8040 update index to sectorNumber 2020-11-24 20:27:35 +08:00
yaohcn
7c0b6f41d8 fix log format 2020-11-24 19:09:48 +08:00
zgfzgf
c13ade3fbf
Downgrade duplicate nonce logs to debug (#4933)
* add messagepool duplicate nonce print info

* update log.Info to log.debug and go fmt

* recover the grouping of imports

* update print from info to debug

* print format %w to %s
2020-11-23 13:03:41 +01:00
Łukasz Magiera
3113b15217
Merge pull request #4754 from filecoin-project/fix/issue-92
emit events for peer disconnections and act upon them in the blocksync tracker
2020-11-20 18:45:35 +01:00
Łukasz Magiera
34bca28416
Merge pull request #4943 from zgfzgf/fix-policy-v7-len
change typeV7 make len
2020-11-20 18:11:19 +01:00
Łukasz Magiera
91a3d1d34a
Merge pull request #4919 from zgfzgf/fix-incoming-validateblock-record
bug:replace with func recordFailure
2020-11-20 16:57:07 +01:00
Łukasz Magiera
e9fae0425f
Merge pull request #4915 from filecoin-project/asr/predicate-message
Improve error for ActorsVersionPredicate
2020-11-20 16:49:51 +01:00
Łukasz Magiera
9613acd46b
Merge pull request #4913 from zgfzgf/feat-forks-schedule
optimize code UpgradeTapeHeight and go fmt
2020-11-20 16:45:09 +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
vyzo
ef444676c2 combine add and remove evts and use a single emitter
to reduce likelihood of races
2020-11-20 16:15:44 +02:00
vyzo
7aec500384 emit event for peer disconnectionsa and act upon them in the blocksync peer tracker 2020-11-20 15:58:27 +02:00
zgfzgf
463a647118 change typeV7 make len 2020-11-20 17:24:52 +08:00
Aayush Rajasekaran
526cd739f6 Return total power when GetPowerRaw doesn't find miner claim 2020-11-20 00:31:04 -05:00
zgfzgf
de9cef62f7 replace code with func 2020-11-19 20:46:40 +08:00
Aayush Rajasekaran
b1afa2022b Improve error for ActorsVersionPredicate 2020-11-19 02:27:35 -05:00
zgfzgf
7b39c3a907 optimize code UpgradeTapeHeight and go fmt 2020-11-19 14:47:13 +08:00
vyzo
452c85de98 cap maximum number of messages per block in selection 2020-11-18 12:25:26 +02:00
Aayush Rajasekaran
adee4b2a5e Setup remainder msig signers when parsing genesis template 2020-11-18 02:56:30 -05:00
Aayush Rajasekaran
322f34c6c6 Tweak handling of bad beneficaries in DeleteActor 2020-11-18 01:52:46 -05:00
Aayush Rajasekaran
68a16afeda Merge branch 'master' into release/v1.2.0 2020-11-17 19:40:05 -05:00
Łukasz Magiera
50146fb9b9
Merge pull request #4872 from filecoin-project/raulk/fix-blockstore-import
fix badger double open on daemon --import-snapshot; chainstore lifecycle
2020-11-18 01:36:16 +01:00
Łukasz Magiera
c5470ee17e
Merge pull request #4830 from filecoin-project/time/vm-flush
Gas Balancing
2020-11-18 01:34:08 +01:00
vyzo
8191654089 track oversize block errors in metrics 2020-11-17 17:18:49 -05:00
vyzo
e23170d194 add sanitcy check for maximum block size 2020-11-17 17:18:49 -05:00
Łukasz Magiera
c8d985b5c7
Merge pull request #4885 from filecoin-project/asr/worker-key
Speed up worker key retrieval
2020-11-17 20:57:35 +01:00
Jakub Sztandera
f580892e9e
Disable gas tracing
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-11-17 20:41:34 +01:00
Aayush Rajasekaran
080a1165ee
create vm-flush key
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-11-17 20:41:34 +01:00
Jakub Sztandera
1413d6d4b7
Adjust gas values
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-11-17 20:41:34 +01:00
Jakub Sztandera
9b64dba4a1
Add background flushing
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-11-17 20:41:34 +01:00
Jakub Sztandera
f9771c67fb
Fix gas multi error in virtual gas
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-11-17 20:41:34 +01:00
Jakub Sztandera
238174cfca
Adapt virtual gas
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-11-17 20:41:33 +01:00
Jakub Sztandera
f130cd6fca
Adjust virtual gas
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-11-17 20:41:33 +01:00
Jakub Sztandera
336aa95ab5
Add metrics for VM flush duration and obj count
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-11-17 20:41:33 +01:00
Aayush Rajasekaran
c40c513508
Merge pull request #4862 from filecoin-project/asr/circ-supply
Modify vesting schedule post-calico
2020-11-17 13:32:55 -05:00
Łukasz Magiera
425ad9c5fa
Merge pull request #4888 from filecoin-project/asr/zero-address
Avoid sending messages to the zero BLS address
2020-11-17 11:57:47 +01:00
Łukasz Magiera
693bbee953
Merge pull request #4873 from filecoin-project/feat/sdr-upgrade
Support seal proof type switching
2020-11-17 10:57:28 +01:00
Aayush Rajasekaran
7838752352 Avoid sending messages to the zero BLS address 2020-11-17 01:42:11 -05:00
Aayush Rajasekaran
596b31fb9e Speed up worker key retrieval 2020-11-17 00:53:26 -05:00
Aayush Rajasekaran
2219bff1c9 SerializeParams should return ErrSerialization 2020-11-17 00:28:27 -05:00
Aayush Rajasekaran
5c791cd93b Check parent runtime allowInternal when making a new Runtime 2020-11-17 00:22:50 -05:00
Aayush Rajasekaran
ce9146916a fix: actor method params deserialization error exit code 2020-11-17 00:22:50 -05:00
Aayush Rajasekaran
dff88b63b2 fix: guard against self beneficiary when deleting actor 2020-11-17 00:22:50 -05:00
Raúl Kripalani
0c6072a1a0 chainstore lifecycle: close via Close() instead of context. 2020-11-16 22:28:59 +00:00
frrist
d25e5d1c08 polish: add DeffAddressMap method to init wrapper
- replace logic in predicates
2020-11-16 11:45:25 -08:00
Steven Allen
1f91e7267d correctly set seal proof types from tests 2020-11-16 19:04:17 +01:00
Steven Allen
4f33c91f81 fix calico upgrade logic 2020-11-16 19:04:17 +01:00
Steven Allen
423ff0631d fix genesis 2020-11-16 19:04:17 +01:00
Steven Allen
948ee53080 add upgrade height where SDR is required 2020-11-16 19:04:13 +01:00
Łukasz Magiera
4d8327c29a Fix miners with no sectors in node tests 2020-11-16 19:03:30 +01:00
Łukasz Magiera
2a7e4af5ee Fix lotus-miner/lotus-worker build 2020-11-16 19:03:30 +01:00
Łukasz Magiera
6bea9dd178 Making sealing logic work with multiple seal proof types 2020-11-16 19:03:30 +01:00
Łukasz Magiera
470538b082
Merge pull request #4770 from filecoin-project/fix/winpost-sset
Don't use terminated sectors for winning PoSt
2020-11-16 17:16:08 +01: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
96d56ec096 Modify vesting schedule post-calico 2020-11-15 19:27:45 -05:00
Aayush Rajasekaran
6d0b3978b9 Merge branch 'master' into release/v1.2.0 2020-11-15 19:03:18 -05: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
6742a74260
Merge pull request #4814 from filecoin-project/feat/rw-close
update libp2p for stream interface changes
2020-11-13 00:23:29 +01:00
Łukasz Magiera
961a25298b predicates: Fast StateGetActor wrapper 2020-11-12 23:45:06 +01:00
Steven Allen
5f1737379a update libp2p for stream interface changes 2020-11-12 13:57:19 -08:00
Łukasz Magiera
d3d5f8d7f0
Merge branch 'master' into fix/logging-quieter 2020-11-12 20:45:41 +01: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
whyrusleeping
7921f8d713 drop a few logs down to debug 2020-11-12 11:25:22 -08:00
Aayush Rajasekaran
5d9c79811f
Update to actors v2.3.0
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-11-12 18:49:11 +01:00
Dirk McCormick
f3922e7485 test: for FundManager panic to ensure it is fixed 2020-11-12 15:35:43 +01:00
Łukasz Magiera
d525acdeda
Merge pull request #4797 from zgfzgf/fix-2k-chain-syn
2k sync BootstrapPeerThreshold
2020-11-12 10:33:04 +01:00
Dirk McCormick
6184d228c1 fix: panic in FundManager 2020-11-11 20:32:26 +01:00
hannahhoward
9f7204ee26 feat(builder): finish new FundManager setup
Finish setup of new FundManager and provide a migration for previously reserved funds
2020-11-10 21:11:05 -08:00
Dirk McCormick
0d243bb824 refactor: integrate new FundManager 2020-11-10 21:11:05 -08:00
zgfzgf
1301fd6ddb 2k sync BootstrapPeerThreshold 2020-11-11 12:20:31 +08:00
Dirk McCormick
0101436933 fix: flaky TestFundManagerWithdrawalLimit test 2020-11-10 19:44:26 -08:00
Dirk McCormick
0e0ffc9c10 refactor: remove FundManager.Wait 2020-11-10 19:44:26 -08:00
Dirk McCormick
a51a62cb42 fix: batch withdrawal requests by wallet 2020-11-10 19:44:26 -08:00
Dirk McCormick
86c204d8a8 refactor: improve FundManager naming and docs 2020-11-10 19:44:26 -08:00
Dirk McCormick
1182927fe5 refactor: add wallet param to FundManager methods 2020-11-10 19:44:26 -08:00
Dirk McCormick
4d3cd7dcb8 refactor: FundManager 2020-11-10 19:44:26 -08: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
8f5847b8e3 fix condition. 2020-11-10 22:34:13 +00:00
Łukasz Magiera
2ae0edc4df
Merge pull request #4688 from filecoin-project/feat/head-change-coalscer
head change coalescer
2020-11-10 19:40:54 +01: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
Raúl Kripalani
54bf7c99d7 add the viewable trait to our gazillion blockstores. 2020-11-10 12:40:32 +00:00
Lucas Molas
3ec25cbece
restrict parse fil string length (#4780) 2020-11-09 22:12:32 -03:00
Łukasz Magiera
3a3270b37c nv7 upgrade: Don't use terminated sectors for winning PoSt 2020-11-09 18:52:10 +01:00
Łukasz Magiera
290414e935 wallet: Don't return null from WalletList 2020-11-09 18:42:43 +01: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
Aayush Rajasekaran
7b8158b1af Update to actors v2.3.0 2020-11-08 16:00:22 -05: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
84c9d1dbb7 hook head change coalescer to mpool 2020-11-06 22:26:24 +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
Łukasz Magiera
426c2e8c2b
Merge pull request #4717 from filecoin-project/feat/optional-chain-bitswap
Optional chain Bitswap
2020-11-06 16:49:39 +01:00
Łukasz Magiera
6bb8521a55
Merge pull request #4719 from filecoin-project/frrist/msig-diffing
polish: add msig pendingtxn diffing and comp
2020-11-06 16:47:29 +01:00
Frank
a3f5d0f590 match data type for reward state api 2020-11-06 11:06:57 +08:00
vyzo
32b7797394 only subscribe to messages topic if we are synced within 10 epochs 2020-11-05 18:08:13 +02:00
Jakub Sztandera
fe95d19e29
Move gas multiplier as property of pricelist
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-11-04 20:13:17 +01:00
Raúl Kripalani
370ef93db6 chainstore: new ForceHeadSilent to support benchmarks. 2020-11-04 14:39:01 +00:00
frrist
7d540fc0d8 polish: add msig pendingtxn diffing and comp 2020-11-03 17:25:53 -08:00
Łukasz Magiera
a1e1b03ca4 Optionally allow bitswap for chainstore 2020-11-03 23:44:44 +01:00
Raúl Kripalani
809111336a Merge branch 'master' into badger-viewable 2020-11-03 18:29:10 +00:00
Łukasz Magiera
9270ac6358 Make some logs quieter 2020-11-03 13:28:41 +01:00
Łukasz Magiera
fdd90e036f
Merge pull request #4697 from filecoin-project/asr/rename-builtins
Rename builtin actor generators
2020-11-03 11:47:55 +01:00
Łukasz Magiera
c215615da3
Merge pull request #4704 from zgfzgf/fix-runtime-gas-print
modify runtime gasUsed printf
2020-11-03 11:46:26 +01:00
Łukasz Magiera
b7b6252048
Merge pull request #4705 from filecoin-project/asr/delete-default
Correctly delete the default wallet address
2020-11-03 11:44:25 +01:00
Aayush Rajasekaran
46619fbb8d Correctly delete the default wallet address 2020-11-03 03:00:18 -05:00
zgfzgf
4d9c90ed4a modify runtime gasUsed printf 2020-11-03 15:46:35 +08:00
Aayush Rajasekaran
af8cc3d29f Rename builtin actor generators 2020-11-02 18:42:30 -05:00
Jakub Sztandera
e68f69b63b
Call GetHeaviestTipSet() only once when syncing
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-11-02 22:56:26 +01:00
Raúl Kripalani
a16d7f221e Merge branch 'master' into badger-viewable 2020-11-01 13:10:56 +00:00
Raúl Kripalani
099c4b5e1d migrate repo.Datastore(/chain) to repo.Blockstore(). 2020-11-01 13:03:21 +00:00
Łukasz Magiera
a5c05f87f1
Merge pull request #4105 from filecoin-project/asr/decode-params
Add a StateDecodeParams method
2020-10-31 01:05:50 +01:00
Łukasz Magiera
c6a8efff7d
Merge pull request #4623 from filecoin-project/feat/cache-deal-state-matcher
Cache deal states for most recent old/new tipset
2020-10-31 01:00:11 +01:00
Łukasz Magiera
0f8dadadf5
Merge pull request #4664 from filecoin-project/refactor/events-api-call-matcher
Simplify chain event Called API
2020-10-31 00:48:45 +01:00
Łukasz Magiera
862c5b61a4
Merge pull request #4628 from filecoin-project/frrist/power-claims-changed
polish: add ClaimsChanged and DiffClaims method to power shim
2020-10-31 00:30:03 +01:00
Łukasz Magiera
3b16faddad
Merge pull request #4652 from filecoin-project/feat/default-max-fee-cfg
Config for default max gas fee
2020-10-30 21:35:10 +01:00
Łukasz Magiera
f380d6be43
Merge pull request #4651 from filecoin-project/feat/prep-for-gasb
Prep for gas balancing
2020-10-30 20:18:03 +01:00
vyzo
12f6119739 don't include messages that drop the balance below zero 2020-10-30 20:56:33 +02:00
Jakub Sztandera
8afceee7a9
Fix messagepool accounting
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-10-30 19:21:25 +01:00
Dirk McCormick
79a8ff04fd refactor: simplify chain event Called API 2020-10-30 14:00:32 +01:00
vyzo
f6ecff0e26 check recent syncs in selectSyncTarget/selectDeferredSyncTarget 2020-10-30 07:50:26 +02:00
Aayush Rajasekaran
5ff42505e8 Add a StateDecodeParams method 2020-10-29 22:04:33 -04:00
Łukasz Magiera
ae7889f830 Config for default max gas fee 2020-10-29 20:50:11 +01:00
Jakub Sztandera
d8d9291402
Prep for gas balancing
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-10-29 20:34:48 +01:00
vyzo
8d25fd39cf set BootstrapPeerThreshold to 1 for tests 2020-10-29 19:32:09 +02:00
vyzo
57234d8ef3 fix spelling in comment to satisfy linter
this is ridiculous; since when do linters apply spellchecking on comments???
2020-10-29 19:13:45 +02:00
vyzo
47830efbf5 set BootstrapPeerThreshold to 4, add env variable to override 2020-10-29 19:08:58 +02:00
vyzo
a650641813 transition out of initial sync only if sync finishes within 15min 2020-10-29 17:27:13 +02:00
vyzo
8702ff8b7e rename initialSync to initialSyncDone 2020-10-29 17:12:47 +02:00
vyzo
a26420f6e8 add missing return for deferrals during initial sync 2020-10-29 09:40:41 +02:00
whyrusleeping
77ec7caaad WIP: add a command for compacting sector numbers bitfield 2020-10-29 00:18:10 -07:00
frrist
7b8dae92d9 feat: add power actor claim diff method 2020-10-28 16:52:52 -07:00
frrist
e33cc5ee12 polish: add ClaimsChanged method to power shim 2020-10-28 13:56:02 -07:00
Jakub Sztandera
ad905fc310
Expose WorkerID
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-10-28 20:22:07 +01:00
Dirk McCormick
f79652c28c feat: cache deal states for most recent old/new tipset 2020-10-28 16:55:48 +01: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
vyzo
ba2512655e track last few worker states for debug purposes 2020-10-28 14:08:06 +02:00
vyzo
6266bae1d3 log worker spawning from initial sync deferrals 2020-10-28 11:44:16 +02:00
vyzo
188d1649d3 stop the ticker when done with it 2020-10-28 11:41:40 +02:00
vyzo
9ddf7bbd15 better handling of initial sync 2020-10-28 11:36:34 +02:00
vyzo
469666de82 limit max active sync workers 2020-10-28 10:33:22 +02:00
vyzo
fc1ac3e752 simplify circular buffer code
we don't care about order of checks!
2020-10-28 00:02:08 +02:00
vyzo
ab7a66b90d track recently synced tipsets to avoid unnecessary worker spawning 2020-10-27 23:48:31 +02:00
Jakub Sztandera
2b82e5a118
Fix tipset coalescing in case of repeated blocks
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-10-27 21:23:16 +01:00
Jakub Sztandera
16d2cb6309
Add flag to coalesce Tipsets in pending queue
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-10-27 18:00:34 +01:00
Łukasz Magiera
e1da874258 Merge remote-tracking branch 'origin/master' into feat/async-restartable-workers 2020-10-27 03:31:07 +01:00
frrist
0d384050fa polish: add Equals method to MinerInfo shim 2020-10-26 14:45:02 -07:00
vyzo
2fd0d430c8 set BootstrapPeerThreshold to 1, to mimic old code
which incidentally fixes tests
2020-10-26 15:49:24 +02:00
vyzo
f055681972 fix test 2020-10-26 15:43:22 +02:00
vyzo
c0a039ee11 fix logging 2020-10-26 15:19:09 +02:00
vyzo
f26385d0c6 use weight as the sync target selector 2020-10-26 14:51:26 +02:00
vyzo
af53b72eb8 fix typo 2020-10-26 14:36:34 +02:00
vyzo
5d34b7d618 rewrite sync manager 2020-10-26 14:11:19 +02:00
Jinsub Moon
bfbf6a2711 Do not fail wallet delete because of pre-existing trashed key 2020-10-25 06:25:28 +00:00
Steven Allen
f23034305f Handle worker key changes correctly in runtime 2020-10-24 02:57:17 -07:00
Steven Allen
06af2fb52b Remove the worker key cache and use the correct worker key
We need to use the worker key from the lookback tipset state. We can't
reasonably maintain this cache, unfortunately (unless we kept some form of
"per-height" cache).
2020-10-23 19:40:05 -07:00
Steven Allen
8bb69f1e9c Use pre-computed parent state root for lookback info
There's no need to call TipSetState and recompute it.
2020-10-23 19:40:01 -07:00
Łukasz Magiera
660236b224 Merge remote-tracking branch 'origin/master' into feat/async-restartable-workers 2020-10-23 23:25:35 +02:00
Jakub Sztandera
c7e6c8eacc
Fix flaky TestChainExportImportFull
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-10-23 21:45:08 +02:00
Jakub Sztandera
16a911bc39
Fix random test failures
If block 1 was a null block then blockSet would include genesis which
would lead to us trying to load parent of a genesis block.

Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-10-23 19:33:30 +02:00
Łukasz Magiera
c81db5a21c
Merge pull request #4420 from filecoin-project/deps/drand-v1.2.0
Chore: update drand to v1.2.0
2020-10-23 18:25:00 +02:00
Dirk McCormick
92942d44d1 feat: lite-mode - market storage and retrieval clients 2020-10-23 15:02:26 +02:00
Łukasz Magiera
2c3d80494f
Merge pull request #4538 from filecoin-project/steb/test-cleanup-proofs
Cleanup test initialization and always validate VRFs in tests
2020-10-23 10:53:54 +02:00
Steven Allen
2cf770cc91
Merge pull request #4539 from filecoin-project/steb/fix-worker-key-lookback
Use the correct lookback for the worker key when creating blocks
2020-10-22 21:10:25 -07:00
Jakub Sztandera
580a2f4dc6
Add option to join by common parents
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-10-23 01:35:26 +02:00
Jakub Sztandera
c8fe21c1ef
PopRelated aggretates the bucket
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-10-23 01:18:13 +02:00
Jakub Sztandera
810feee5a1
PopRelated should pop all
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-10-23 00:39:08 +02:00
Jakub Sztandera
24fc7d4cbd
Add reproduction test and fix the issue
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-10-23 00:34:04 +02:00
Jakub Sztandera
5edfc527b0
More than one bucket
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-10-23 00:34:03 +02:00
Jakub Sztandera
febc28f83f
Add log and Insert
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-10-22 23:39:54 +02:00
Łukasz Magiera
c17e8e778d
Merge pull request #4526 from filecoin-project/wallet-4464
Delete wallet from local wallet cache
2020-10-22 19:50:01 +02:00
Łukasz Magiera
b2510e5fc5
Merge pull request #4508 from filecoin-project/fix/actor-not-found-mininig-base
MinerGetBaseInfo: if miner is not found in lookback, check current
2020-10-22 19:45:43 +02:00
Łukasz Magiera
88ac85b6ae
Merge pull request #4500 from filecoin-project/fix/mpool-push-atomicity
make push and addLocal atomic
2020-10-22 19:43:52 +02:00
Steven Allen
b05613445e Sign blocks with the worker key from the correct lookback epoch 2020-10-22 09:26:58 -07:00
Steven Allen
4a550d12d4 Always validate VRFs, even when insecure post validation is enabled
We always generate them, we might as well validate them.
2020-10-22 09:19:46 -07: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
041762a34f
Merge pull request #4383 from filecoin-project/steb/actor-v2-imports
Remove most v0 actor imports
2020-10-22 17:17:56 +02:00
Łukasz Magiera
25c4a1bd8d
Merge pull request #4523 from filecoin-project/misc/remove-log-sync
heaviestTipSet reurning nil is a ok
2020-10-22 17:16:02 +02:00
Łukasz Magiera
05b459e4c5
Merge pull request #4379 from zgfzgf/feat-mining
optimize mining code
2020-10-22 16:12:40 +02:00
Łukasz Magiera
ae04f3029b chain: Add more robust test for ChainExport 2020-10-22 16:01:11 +02:00
Łukasz Magiera
40872e9d90 Merge branch 'fix-chain-export' of github.com:zgfzgf/lotus into zgfzgf-fix-chain-export 2020-10-22 15:56:42 +02:00
Łukasz Magiera
b85bf82d00
Merge pull request #4318 from filecoin-project/asr/shed-won-power
Add a shed util to determine % of power that has won a block
2020-10-22 15:40:55 +02:00
Will Scott
035a762358 update drand to v1.2.1
* stop autowatching
* set user-agent
2020-10-21 16:49:59 -07:00
jennijuju
7f98be2920 Delete wallet from local wallet cache 2020-10-21 17:53:26 -04:00
Jakub Sztandera
5c9c08ef85
heaviestTipSet reurning nil is a ok
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-10-21 22:16:01 +02:00
Steven Allen
5e23933757 fix import of v0 for test
We're still on actors v0 in this test.
2020-10-21 12:18:38 -07:00
Steven Allen
9d15a08d27 correctly mark new actors as "important" 2020-10-21 12:18:38 -07:00
Steven Allen
30bda0b4c4 set network name everywhere 2020-10-21 12:18:38 -07:00
Steven Allen
710ac9d544 use the correct network version in genesis
1. Version 0 upgrades happen _after_ genesis.
2. Get rid of UseNewestNetwork. It's not useful and quite dangerous.
2020-10-21 12:18:38 -07:00
Steven Allen
bcabe7b3b5 migrate methods to abstracted methods
Method numbers never change anyways. At worst, we'll deprecate old methods and
have to explicitly import them from the correct actors version to use them.
2020-10-21 12:18:37 -07:00
Steven Allen
4e730b5ec8 port to v2 imports 2020-10-21 12:16:23 -07:00
Aayush Rajasekaran
7f46ad19ac VM: Enforce a call depth limit 2020-10-20 18:19:50 -04:00
Jakub Sztandera
6530431995
MinerGetBaseInfo: if miner is not found in lookback, check current
If miner is found in current state, just return nil base info as miner
cannot mine if he is not found in the lookback.

Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-10-20 23:54:35 +02:00
Aayush Rajasekaran
556f92a823 Update to actors v2.2.0 at PostLiftoff epoch 2020-10-20 17:23:35 -04:00
vyzo
580980d149 make push and addLocal atomic 2020-10-20 19:13:17 +03:00
Łukasz Magiera
da044d8b00
Merge pull request #4486 from filecoin-project/feat/better-sync-logs
add some extra logging to try and debug sync issues
2020-10-20 13:29:20 +02:00
whyrusleeping
608010c35d add some extra logging to try and debug sync issues 2020-10-19 19:09:49 -07:00
Jakub Sztandera
a055540c25
Fix lint
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-10-20 01:32:51 +02:00
Jakub Sztandera
cb0513f4c1
Add test
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-10-20 01:30:40 +02:00
Jakub Sztandera
be42dd824b
state: optimize state snapshot address cache
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-10-20 00:43:51 +02:00
Łukasz Magiera
7ac5dc55d0 Merge remote-tracking branch 'origin/master' into feat/async-restartable-workers 2020-10-17 13:45:11 +02:00
Aayush Rajasekaran
89f46cb5cc Make ApplyRet's GasOutputs a pointer, return nil when unused 2020-10-15 21:20:53 -04:00
Aayush Rajasekaran
cb801d47c7 Add GasCost to InvocResult 2020-10-15 18:48:51 -04:00
Łukasz Magiera
3fb5334959 mpool: Don't block node startup loading messages 2020-10-15 03:36:55 +02:00
Łukasz Magiera
22f49f8946
Merge pull request #4366 from zgfzgf/feat-applyblocks-map
optimize map use struct{}
2020-10-15 03:04:57 +02:00
Łukasz Magiera
1350079503
Merge pull request #4353 from zgfzgf/feat-compute-tipSet-state
optimize code use ts.Cids
2020-10-15 03:03:39 +02:00
Łukasz Magiera
698b49b7ef Improve gas defaults 2020-10-15 02:46:47 +02:00
Łukasz Magiera
7ccb2aabf0
Merge pull request #4406 from filecoin-project/steb/reduce-garbage
reduce garbage in blockstore
2020-10-15 01:49:01 +02:00
Łukasz Magiera
d02d4bc275
Merge pull request #4403 from filecoin-project/frrist/fix-miner-shim-impls
fix: return true when deadlines changed
2020-10-15 00:13:36 +02:00
Łukasz Magiera
39670df6af
Merge pull request #4125 from filecoin-project/feat/drand-cloudflare
Update drand endpoints
2020-10-15 00:01:06 +02:00
frrist
28823fb8e9 fix: bad indirection of deadline diffing 2020-10-14 14:50:59 -07:00
Steven Allen
e2fbbdcb15 reject messages with invalid CIDs
These can't possibly be valid messages, so we should just drop the block.
2020-10-14 14:43:58 -07:00
Steven Allen
bbc6de94fc write messages to a temp blockstore when validating 2020-10-14 14:43:52 -07:00
frrist
ea1349205b fix: return true when partitions changed 2020-10-14 14:37:33 -07:00
frrist
470a565c34 fix: return true when deadlines changed 2020-10-14 14:27:35 -07:00
Whyrusleeping
dfd6fbfaa4
Merge pull request #4311 from filecoin-project/feat/msig-remove-cmd
Add propose remove
2020-10-14 11:36:55 -05:00
Aayush Rajasekaran
bf619862c3
Merge pull request #4382 from filecoin-project/asr/invoc-result
Add message CID to InvocResult
2020-10-14 02:06:09 -04:00
Aayush Rajasekaran
ce54110228 Add message CID to InvocResult 2020-10-14 00:06:22 -04:00
Aayush Rajasekaran
458ea277fc Aggregate irregular state transitions into a single EexcutionTrace 2020-10-13 22:59:42 -04:00
Aayush Rajasekaran
7dbc8965be Apply nonces to implicit messages 2020-10-13 22:06:06 -04:00
Aayush Rajasekaran
2426700821 Don't transfer zero FIL during rebalancing fork 2020-10-13 22:06:06 -04:00
zgfzgf
51aca86e98 optimize mining code 2020-10-14 08:44:42 +08:00
Steven Allen
b61281ba4b fix a panic on startup when we fail to load the tipset
There may be a deeper issue here, but we need to handle this more gracefully
somehow. See #4358.
2020-10-13 15:06:47 -07:00
Łukasz Magiera
d5cea9f402
Merge pull request #4367 from filecoin-project/fix/msg-search-off-by-one
Fix off by one tipset in searchBackForMsg
2020-10-13 22:11:24 +02:00
Łukasz Magiera
71b3b9075d Merge remote-tracking branch 'origin/master' into feat/async-restartable-workers 2020-10-13 21:33:21 +02:00
Jakub Sztandera
8987defb9d
Fix BLS message ChainLength add more detail to ValidForBlockInclusion
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-10-13 20:02:42 +02:00
Łukasz Magiera
1a70dbe37d
Merge pull request #4347 from filecoin-project/fix/sync/message-validation-state-height
fix(sync state): set state height to actual tipset height
2020-10-13 17:55:51 +02:00
Jakub Sztandera
87cd8c6725
Fix off by one tipset in searchBackForMsg
This way we will return the tipset the message was executed in

Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-10-13 17:48:54 +02:00
zgfzgf
1eb2d0ae50 optimize map use struct{} 2020-10-13 22:34:07 +08:00
Jakub Sztandera
5fd0bf11ba
Merge pull request #4338 from filecoin-project/feat/message-json-cids
types: Add CID fields to messages in json marshalers
2020-10-13 14:59:22 +02:00
zgfzgf
07d0b67628 optimize code use ts.Cids 2020-10-13 10:46:41 +08:00
Lucas Molas
9b4cac9612 fix(sync state): set state height to actual tipset height 2020-10-12 21:14:16 -03:00
Aayush Rajasekaran
96e1dfd8d7 Add an endpoint for precise circulating supply 2020-10-12 16:38:29 -04:00
Łukasz Magiera
6c08120628 types: Add CID fields to messages in json marshalers 2020-10-12 20:46:47 +02:00
Łukasz Magiera
224a96431f
Merge pull request #4319 from filecoin-project/asr/repay-debt-cli
Add a CLI tool for miner's to repay debt
2020-10-12 19:24:40 +02:00
Hector Sanjuan
8001ed3030 Drand: add cloudflare. Use HTTP for PL nodes.
Adding Cloudflare ensures additional redundancy.

Switching to HTTP for PL nodes reduces latency and cost. Randomness is
verified after being received.
2020-10-12 19:15:56 +02:00
Łukasz Magiera
65883cbb6b
Merge pull request #4290 from filecoin-project/feat/ledger-integration
adding in ledger support
2020-10-12 15:09:27 +02:00
zgfzgf
b7726c4ca8 optimize walkSnapshot recurseLinks 2020-10-12 16:44:39 +08:00
Łukasz Magiera
8b648cf77c ledger: Close device in WalletNew 2020-10-12 09:21:42 +02:00
Steven Allen
92177b5738 implement tape upgrade
Upgrade to specs-actors v2.1 and network version 5. This fixes the bug where
prove commits were not accepted.
2020-10-12 02:00:27 -04:00
Łukasz Magiera
a2e0832a12 Fix lint 2020-10-12 06:17:00 +02:00
Steven Allen
c296e1bbca use actor abstraction in metrics command 2020-10-11 20:31:20 -07:00
Aayush Rajasekaran
b4215e5f46 Add a CLI tool for miner's to repay debt 2020-10-11 19:57:30 -04:00
Jakub Sztandera
df7ee610cd
Re-enable repub
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-10-12 01:29:19 +02:00
Jakub Sztandera
fda8b932ba
Ask for confirmation when creating a key
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-10-12 01:27:15 +02:00
Aayush Rajasekaran
bae3b7d594 add a shed util to determine % of power that has won a block 2020-10-11 19:05:54 -04:00
Jakub Sztandera
7b4a5fc7ca
Fixup off by one
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-10-12 00:50:29 +02:00
Jakub Sztandera
d6c8276c7a
Add support for WalletNew to ledger
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-10-12 00:48:23 +02:00
Jakub Sztandera
2b21fdef33
Refactor from crypto.SigType to types.KeyType
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-10-12 00:07:53 +02:00
Łukasz Magiera
6a232e7214
Basic multi-wallet support
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-10-12 00:07:41 +02:00
Łukasz Magiera
8ae66d6c6a
Fix lint warnings
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-10-12 00:07:40 +02:00
Łukasz Magiera
66d6113340
ledgerwallet: Validate signing bytes
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-10-12 00:07:40 +02:00
whyrusleeping
b35f9b56b4
WIP: adding in ledger support
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-10-12 00:07:40 +02:00
Jakub Sztandera
85be11fb75
Add propose remove
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-10-11 18:10:02 +02:00
Łukasz Magiera
00620aac57
Merge pull request #4296 from filecoin-project/feat/sync-unmarkbad-all
sync unmark-bad --all
2020-10-10 22:35:56 +02:00
Łukasz Magiera
a491fc97b9
Merge pull request #4301 from filecoin-project/steb/fix-two-races
Fix two races
2020-10-10 20:37:13 +02:00
Łukasz Magiera
151577f04e
Merge pull request #4287 from filecoin-project/feat/flush_validation_cache_on_chain_import
Dump the block validation cache whenever we perform an import
2020-10-10 20:33:17 +02:00
Steven Allen
7245ac2b69 fix a race in the sync manager
1. SyncerState contains a mutex and should never be copied. Honestly, this case
was probably fine but it's just as easy to create a separate snapshot type and
easier to reason about.

2. We need to initialize the syncStates array once at start, before accessing
it. By each syncer state inside each worker, we were racing with calls to
`State()`. Again, this was probably benign, but I don't trust optimizing
compilers.
2020-10-10 08:31:04 -07:00
Peter Rabbitson
e7d3b2503e Merge tag 'v0.9.1' 2020-10-10 15:54:51 +02:00
Łukasz Magiera
4fa6afad13 Fix panic in wallet export when key is not found 2020-10-10 15:44:22 +02:00
Peter Rabbitson
23f5a99117 Add comment clarifying current codepath 2020-10-10 15:36:32 +02:00
Łukasz Magiera
9a26896c69
Merge pull request #4282 from filecoin-project/steb/fix-tipset-cache-race
fix a race in tipset cache usage
2020-10-10 12:27:15 +02:00
Łukasz Magiera
18e58467f8 sync unmark-bad --all 2020-10-10 10:26:42 +02:00
Steven Allen
d84f5dabab remove upgrade invariant checks
These checks may be _too_ strict and could cause the upgrade to fail unnecessarily.
2020-10-09 21:51:58 -07: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
Łukasz Magiera
a6d9b302fa
Merge pull request #3583 from filecoin-project/feat/signing-backends
Remote wallet backends
2020-10-10 02:58:02 +02:00
Steven Allen
f32b3bf99b fix a race in tipset cache usage
This tipset cache is shared between multiple services and is called from
multiple places.
2020-10-09 17:32:45 -07:00
Łukasz Magiera
09bff14d85
Merge pull request #4269 from filecoin-project/steb/simplify-sync
simplify message syncing logic
2020-10-10 00:00:26 +02:00
Łukasz Magiera
3cb1abba4f
Merge pull request #4276 from filecoin-project/steb/fix-bad-error
return the correct err from iterFullTipset
2020-10-09 23:26:54 +02:00
Łukasz Magiera
d4c92942e7
Merge pull request #4275 from filecoin-project/steb/unshare-journal
unshare the journal
2020-10-09 23:16:27 +02:00
Steven Allen
c0182f8301 return the correct err from iterFullTipset 2020-10-09 13:59:56 -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
Ingar Shu
d80e7eda93
Revert cached "available" amount if the AddFunds message send fails 2020-10-09 13:18:43 -07:00
Łukasz Magiera
fdaa9c14ad Merge remote-tracking branch 'origin/master' into feat/signing-backends 2020-10-09 20:36:51 +02:00
Łukasz Magiera
9d8932d395
Merge pull request #4268 from iand/fix/rewardv2-cumsumrealized
fix: spec actors 2 reward shim uses correct field for CumsumRealized
2020-10-09 20:32:14 +02:00
Steven Allen
105aa40007 simplify message syncing logic
1. Allow duplicate blocks from bitswap. This shouldn't happen, but there's no
reason to bail (just log loudly).
2. Simplify logic to very explicitly check to make sure we're fetching every
block.
2020-10-09 11:06:49 -07:00
Ian Davis
f87d325b6f
fix: spec actors 2 reward shim uses correct field for CumsumRealized 2020-10-09 17:48:20 +01:00
Łukasz Magiera
ab8286fa38 Fix docsgen, lotus-soup build 2020-10-09 18:43:22 +02:00
Łukasz Magiera
feb4b3c8b4 Merge remote-tracking branch 'origin/master' into feat/signing-backends 2020-10-09 15:51:25 +02:00
Dirk McCormick
d69e4c7cf2 refactor: lite-mode - simplify organization of dep injection 2020-10-09 11:54:42 +02:00
Dirk McCormick
ef73b964fb feat: add end-to-end test for lite mode 2020-10-09 11:48:35 +02:00
Dirk McCormick
7b1bec91ed feat: add tests for gateway ChainGetTipsetByHeight 2020-10-09 11:45:16 +02:00
Dirk McCormick
767611247c feat: add RPC for StateWaitMsg 2020-10-09 11:45:16 +02:00
Dirk McCormick
00a14de094 feat: gateway - StateLookupID 2020-10-09 11:43:03 +02:00
Dirk McCormick
e19cd9ed01 feat: lotus-lite - replace wallet StateManager with thin client to gateway 2020-10-09 11:43:03 +02:00
Łukasz Magiera
bacac245c7
Merge pull request #4256 from filecoin-project/steb/call-stop
cleanup tests on finish
2020-10-09 10:20:33 +02:00
Aayush Rajasekaran
9c35762966 Fix deletion of addresses from wallet 2020-10-09 03:26:51 -04:00
Łukasz Magiera
6cc7559b04 Fix APIInfo import cycle in tests 2020-10-09 02:58:12 +02:00
Łukasz Magiera
3cd53ad9d9 Use APIInfo parser for RemoteBacked wallet config 2020-10-09 02:21:37 +02:00
Łukasz Magiera
6c54d2445d Appease the linter 2020-10-09 01:53:12 +02:00
Steven Allen
82b15d2637 cleanup tests on finish 2020-10-08 16:36:02 -07:00
Łukasz Magiera
7d2f06cfbd Fix WalletSign in tests 2020-10-09 01:34:48 +02:00
Łukasz Magiera
6e8efb9d2c gofmt 2020-10-09 01:27:49 +02:00
Łukasz Magiera
f3dc730b05 wallet: Add metadata to WalletAPI.WalletSign 2020-10-09 01:27:38 +02:00
Łukasz Magiera
114776f2c5 wallet: Drop WalletSignMessage from WalletAPI 2020-10-09 01:04:59 +02:00
Łukasz Magiera
4835109470 wallet: Post-merge fixes 2020-10-09 00:51:04 +02:00
Łukasz Magiera
8783c7434e Merge remote-tracking branch 'origin/master' into feat/signing-backends 2020-10-09 00:50:41 +02:00
Łukasz Magiera
82bd7bd2ec
Merge pull request #4224 from filecoin-project/fix/repub-journal
Fix Messages field in MessagePoolEvtMessage journal entry
2020-10-08 23:33:57 +02:00
Jakub Sztandera
973f61bc10
Optimize chain and message sync
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-10-08 23:10:07 +02:00
Jakub Sztandera
60768f4863
Optimize SearchForMessage and GetReceipt
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-10-08 23:10:06 +02:00
Łukasz Magiera
17f61ac212
Merge pull request #4245 from filecoin-project/debug/chain-sync-lookback
add more info to chain sync lookback failure
2020-10-08 17:05:08 +02:00
whyrusleeping
cdc2f86f5a add more info to chain sync lookback failure 2020-10-08 09:45:07 -05:00
Łukasz Magiera
7332a39f00 Merge remote-tracking branch 'origin/master' into fix/balances-audit-no-suffix 2020-10-08 13:58:40 +02:00
Łukasz Magiera
0de3051821 Merge remote-tracking branch 'origin/master' into feat/async-restartable-workers 2020-10-08 13:10:41 +02:00
whyrusleeping
cd9af278b4 more info in audit outputs 2020-10-07 17:01:01 -07:00
Łukasz Magiera
8dd8892b81 Merge remote-tracking branch 'origin/next' into feat/faster-v2-upgrade 2020-10-08 01:54:29 +02:00
Łukasz Magiera
79dba816c7
Merge pull request #4232 from filecoin-project/steb/fix-v2-actor-error
return an illegal actor error when we see an unsupported actor version
2020-10-08 01:47:10 +02:00
Łukasz Magiera
f9f54819d4 Env var to control v2 actor migration
Env var to control v2 actor migration
2020-10-07 19:41:36 -04:00
Aayush Rajasekaran
d1555106a4 Set actorsv2 upgrade epoch 2020-10-07 19:41:36 -04:00
Steven Allen
d97eb10349 fix spelling nit 2020-10-07 16:32:54 -07:00
Steven Allen
e8253d22c6 only forbid Call* at expensive forks 2020-10-07 16:14:11 -07:00
whyrusleeping
8f4911ac0d dont print fil suffix in lotus shed audit balances 2020-10-07 16:00:52 -07:00
Steven Allen
b0bea5f145 return an illegal actor error when we see an unsupported actor version
As far as the chain is concerned, this actor does not exist.
2020-10-07 15:46:56 -07:00
Steven Allen
1fea550ce5 test that we refuse explicit calls at the migration epochs 2020-10-07 15:33:14 -07:00
Steven Allen
9b7b6146eb construct the new vm with the state manager's vm constructor 2020-10-07 15:31:14 -07:00
Steven Allen
dab1107f5b avoid estimating gas and explicitly calling blocks on fork tipsets
These tipsets can be slow.
2020-10-07 15:31:14 -07:00
Steven Allen
fe912223bd pass an explicit upgrade height to migrations
The tipset height may not be the correct one, given null blocks.
2020-10-07 15:31:12 -07:00
Jakub Sztandera
6f4a762664
Fix Messages field in MessagePoolEvtMessage journal entry
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-10-07 21:13:04 +02:00
Steven Allen
cca17f6078 fix state tree version in v2 upgrade 2020-10-07 12:04:32 -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
Steven Allen
df4b068d0e Merge branch 'master' into next 2020-10-07 11:55:00 -07:00
Steven Allen
6eb49b717f
Merge pull request #4214 from filecoin-project/gas-tracing-public
make vm.EnableGasTracing public.
2020-10-07 11:12:55 -07:00
Whyrusleeping
099b982ea8
Merge pull request #4178 from filecoin-project/frrist/miner-diff-deadlines
feat(miner): add miner deadline diffing logic.
2020-10-07 12:00:31 -05:00
Raúl Kripalani
7cd1330acd make vm.EnableGasTracing public. 2020-10-07 15:52:03 +01:00
Łukasz Magiera
d6fa644974 Fix lint 2020-10-07 14:19:04 +02:00
Łukasz Magiera
b7c8f65af5 stmgr: Make v2 upgrade faster 2020-10-07 08:12:05 +02:00
Aayush Rajasekaran
839d1121ce Update to actors v2.0.1 2020-10-06 20:37:54 -04:00
Łukasz Magiera
2f70a91665 Merge remote-tracking branch 'origin/master' into next 2020-10-06 23:54:59 +02:00
Aayush Rajasekaran
dfaabb4596
Merge pull request #3697 from filecoin-project/fix/actor-panic-fatal
fix: error when actor panics directly
2020-10-06 17:41:31 -04:00
Aayush Rajasekaran
4d6a0f7b8c Set WinningPoStSectorSetLookback to finality post-v2 actors 2020-10-06 17:40:37 -04:00
Aayush Rajasekaran
282c99bdbd
Merge pull request #4160 from filecoin-project/asr/reserve-funds-cric-supply
Add funds that have left FilReserve to circ supply
2020-10-06 17:39:05 -04:00
Aayush Rajasekaran
9857e42206
Merge pull request #4188 from filecoin-project/asr/miner-eligible
Update miner eligibility checks for v2 actors
2020-10-06 17:38:46 -04:00
Aayush Rajasekaran
d9fad5fad0 Move rt.Message fixes behind fork logic 2020-10-06 17:37:50 -04:00
Aayush Rajasekaran
757aa1039f Panic if runtime's Message has non-ID caller or receiver 2020-10-06 17:37:50 -04:00
Aayush Rajasekaran
b71b743420 Bugfix: Runtime's Receiver() should only return ID addresses 2020-10-06 17:37:50 -04: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
Steven Allen
4a6e9c920d set genesis name in test 2020-10-06 11:42:04 -07:00
frrist
d4cbd4fb55 feat(miner): add miner deadline diffing
- logic gathering all removed, faulted, recovered, and recovering
sectors for a miner.
2020-10-06 11:39:38 -07:00
Lucas Molas
7e3339820f fix(sync): remove checks bypass when we submit the block 2020-10-06 15:12:03 -03:00
Łukasz Magiera
15330396bb Fix circ supply before v2 upgrade epoch 2020-10-06 16:53:49 +02:00
Łukasz Magiera
a179cadf0e wallet: Don't output duplicate keys from WalletList 2020-10-06 13:35:31 +02:00
Aayush Rajasekaran
7b556252db Use SysErrReserved1 in the event of an actors panic 2020-10-06 05:34:53 -04:00
Aayush Rajasekaran
4a9155ba85 Use new MinerEligibleToMine method post-v2 actors 2020-10-06 04:43:55 -04:00
Aayush Rajasekaran
f8c886a611 Rename MiningBaseInfo.HasMinPower to EligibleForMining 2020-10-06 03:49:11 -04:00
Aayush Rajasekaran
d02fc08ca4 Support both testnet and mainnet addresses in the internal wallet 2020-10-06 03:27:46 -04:00
Aayush Rajasekaran
14ad91c53f Add type assertion for v2 runtime 2020-10-06 01:27:45 -04:00
Aayush Rajasekaran
f55b18eabe Add funds that have left FilReserve to circ supply 2020-10-05 23:54:57 -04:00
Aayush Rajasekaran
6d25f3d2ae Add some comments 2020-10-05 18:39:39 -04:00
Steven Allen
17846aad2f add some more policy toggles for testground 2020-10-05 14:28:47 -07:00
whyrusleeping
bd0633ff90 add a command to view block space utilization 2020-10-05 14:06:03 -07:00
Steven Allen
8bcc201fc0 fix v2 GetSectorExpiration 2020-10-05 10:54:22 -07:00
Steven Allen
420c44ed2c fix msig start height 2020-10-05 10:35:21 -07:00
Steven Allen
b6500beaab Merge branch 'master' into asr/spec-v1 2020-10-05 10:29:09 -07:00
Steven Allen
b9f8831aaf
fix specs-actors import in payment channel abstraction
Co-authored-by: Łukasz Magiera <magik6k@users.noreply.github.com>
2020-10-05 09:51:04 -07:00
Dirk McCormick
7c3f622fae refactor: message signer - always store *next* nonce in datastore 2020-10-05 14:54:22 +02:00
Dirk McCormick
140671599c fix: make message signer nonce generation transactional 2020-10-05 14:19:31 +02:00
Łukasz Magiera
0162a485d8
Merge pull request #4142 from filecoin-project/steb/bs-sessions
use bitswap sessions when fetching messages, and cancel them
2020-10-05 11:33:21 +02:00
Łukasz Magiera
921d78f820 Merge remote-tracking branch 'origin/master' into feat/async-restartable-workers 2020-10-04 10:39:55 +02:00
Aayush Rajasekaran
4631cee564
Merge pull request #4114 from filecoin-project/fix/fork-after-cron
Run fork function after cron for null block safety
2020-10-02 23:05:36 -04:00
Steven Allen
8292d60196 Merge branch 'master' into asr/spec-v1 2020-10-02 18:03:03 -07:00
Steven Allen
c5de617af6 decouple network version and upgrades
Not all upgrades require network version bumps.
2020-10-02 17:10:57 -07:00
Łukasz Magiera
bd964b4c3e
Merge pull request #4124 from filecoin-project/asr/verifreg
Some helpers for verifreg work
2020-10-03 00:20:45 +02:00
Łukasz Magiera
f147072284 Merge remote-tracking branch 'origin/master' into feat/pruning-command 2020-10-02 23:37:25 +02:00
Łukasz Magiera
a3a3df9b30
Merge pull request #3915 from filecoin-project/feat/mpool-gateway-api
MpoolPushUntrusted API for gateway
2020-10-02 23:30:25 +02:00
Łukasz Magiera
0591bac768
Compare more accurately
Co-authored-by: dirkmc <dirkmdev@gmail.com>
2020-10-02 23:18:37 +02:00
ZenGround0
fecc1ee0ef Review cleanup 2020-10-02 17:12:12 -04:00
Łukasz Magiera
3bebdb3882 Merge remote-tracking branch 'origin/master' into feat/mpool-gateway-api 2020-10-02 23:09:55 +02:00
Steven Allen
53cc1f18d0 use bitswap sessions when fetching messages, and cancel them
1. Explicitly use a session when fetching messages for a block. Technically,
GetBlocks would use an internal session so we'd only end up with two, but one
per block is even better.
2. Actually cancel sessions after a timeout (threading through the context).

NOTE: We should seriously consider having a single session for all blocks, but
we can do that in a followup as it may have unintended consequences (e.g., leaks).
2020-10-02 10:49:35 -07:00
Steven Allen
ed86ac14a1 use upgrade epochs from upgrade schedule 2020-10-01 20:37:14 -07:00
Steven Allen
101d07f704 fix version off by one error 2020-10-01 15:33:32 -07:00
Steven Allen
e865ba0c64 improve upgrade schedule configurable
Unfortunately, it looks like functional ops cannot be passed in via lotus's
di system.
2020-10-01 15:18:59 -07:00
Steven Allen
1cc0f74744 make the upgrade schedule fully configurable
This should help with testing.
2020-10-01 15:02:40 -07:00
Dirk McCormick
9dc75a7bc4 fix: verify voucher amount check 2020-10-01 11:35:41 +02:00
Aayush Rajasekaran
3d91633699 Update to v2/actors master 2020-10-01 05:07:00 -04:00
Aayush Rajasekaran
93e4eae94c Some helpers for verifreg work 2020-10-01 04:49:38 -04:00
Aayush Rajasekaran
60d442e36a Slash filter shouldn't be trigerred if the same block is submitted multiple times 2020-09-30 22:05:16 -04:00
Steven Allen
47a83b422e handle state forks in gas estimation 2020-09-30 15:52:32 -07:00
Steven Allen
9d59635b42 fix error messages 2020-09-30 15:04:16 -07:00
Steven Allen
42d5d8d784 run upgrade logic on stmgr.Call 2020-09-30 14:56:16 -07:00
ZenGround0
8091bb3117 Run fork function after cron 2020-09-30 17:19:58 -04:00
Steven Allen
8dcbd525da abstract over deal collateral 2020-09-30 13:30:24 -07:00
Steven Allen
b01a1d457a abstract multisig calls 2020-09-30 12:30:02 -07:00
Łukasz Magiera
2cfe22d4e5 Merge remote-tracking branch 'origin/master' into feat/async-restartable-workers 2020-09-30 20:48:16 +02:00
Łukasz Magiera
e3ee4e4718 Fix lint errors 2020-09-30 20:24:03 +02:00
Steven Allen
2e9915ac28 move common from message param into message builder constructor 2020-09-30 10:58:34 -07:00
Steven Allen
5253c0d959 fix: import the correct v2 methods 2020-09-30 10:11:48 -07:00
Steven Allen
4c60d7b5ce abstract over paych messages 2020-09-30 10:04:10 -07:00
Steven Allen
4989b1cc90 Merge branch 'master' into asr/spec-v1 2020-09-30 09:19:12 -07:00
Łukasz Magiera
76b1ec1de0
Merge pull request #4065 from filecoin-project/asr/sync-validate
Add lotus shed util to validate a tipset
2020-09-30 09:24:47 +02:00
Łukasz Magiera
7a3a2f8db9
Merge pull request #3924 from filecoin-project/feat/dont-recompute-PoST-redux
Dont recompute post on revert <<redux>>
2020-09-30 09:18:46 +02:00
Aayush Rajasekaran
c45c8f34a1 Parametrise whether sync validators should use cache 2020-09-30 01:39:06 -04:00
Aayush Rajasekaran
a4e7117429 Add lotus shed util to validate a tipset 2020-09-30 01:29:04 -04:00
Łukasz Magiera
237c8c4deb
Merge pull request #3868 from austinabell/async/stransition
Make state transition in validation async
2020-09-29 16:50:52 +02:00
Jakub Sztandera
76db65b1af
Update pebble
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-09-29 14:49:47 +02:00
Jakub Sztandera
55c6b88537
Add toggle for badger, flag out gas tracing
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-09-29 14:49:46 +02:00
Jakub Sztandera
b7f18b4601
Disable callers
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-09-29 14:49:18 +02:00
Łukasz Magiera
1479142047
Merge pull request #3970 from filecoin-project/feat/mpool-to-wallet
refactor: move nonce generation out of mpool
2020-09-29 13:24:35 +02:00
Dirk McCormick
d1c10a61dd fix: message signer - always compare with mpool nonce 2020-09-29 12:20:09 +02:00
Aayush Rajasekaran
be9d23b329 Centralize some params in builtin 2020-09-29 02:25:43 -04:00
Steven Allen
dd65e57d4b set policy correctly from test vectors 2020-09-28 17:53:11 -07:00
Steven Allen
e658ab3287 fix policy test 2020-09-28 17:44:34 -07:00
Steven Allen
c0e190344d check state invariants after upgrade 2020-09-28 17:42:29 -07:00
Steven Allen
1c03862854 fix policy for specs-actors update 2020-09-28 17:28:16 -07:00
Steven Allen
2315db161b cleanup state-tree loading
And remove incorrect comment.
2020-09-28 16:46:29 -07:00
Steven Allen
01272f850d fix state test 2020-09-28 16:23:46 -07:00
Steven Allen
b95b871943 actually upgrade to actors v2 2020-09-28 16:14:51 -07:00
Steven Allen
a314cfd237 process error when setting network name 2020-09-28 15:59:11 -07:00
Steven Allen
c0b316fd9c finish wiring up actors v2 2020-09-28 15:58:07 -07:00
Steven Allen
3e6323a503 make setNetworkName work with any actors version 2020-09-28 15:54:48 -07:00
Steven Allen
d1000e38d7 wire up network upgrade logic for v2 actors upgrade 2020-09-28 15:50:54 -07:00
Steven Allen
c88d124954 use built-in actor ID
The init actor will not allow the account actor to exec an arbitrary actor.
2020-09-28 14:43:55 -07:00
Steven Allen
233d8a9b72 update even more imports 2020-09-28 14:25:58 -07:00
Steven Allen
52e064dabb add gas numbers for v2 2020-09-28 14:09:46 -07:00
Steven Allen
ca9448bc11 rename actors v1 -> actors v2
The actual actors version is v2, not v1. Using Version1 internally was really confusing.
2020-09-28 13:13:18 -07:00
Steven Allen
2049daa008 fix actor imports 2020-09-28 13:12:41 -07:00
Steven Allen
947d1e2902 Merge branch 'master' into asr/spec-v1 2020-09-28 12:53:40 -07:00
Steven Allen
5f3160cf5b continue expanding vm abstraction layer 2020-09-28 12:48:08 -07:00
Jakub Sztandera
2633198e6c
Merge pull request #4056 from zgfzgf/tipset-equals
optimize Tipset equals
2020-09-28 20:15:54 +02:00
Dirk McCormick
cfe6f595b0 fix: unsafe append in LoadTipSet 2020-09-28 16:54:18 +02:00
Dirk McCormick
6b16d48bad refactor: fetch tipset blocks in parallel 2020-09-28 15:56:44 +02:00
Łukasz Magiera
bc495a5c8c
Merge pull request #4049 from filecoin-project/fix/miner-power-cli
fix GetPower with no miner address
2020-09-28 11:30:54 +02:00
zgfzgf
04876c663e modify tipset Equals 2020-09-27 10:17:06 +08:00
zgfzgf
70071e273d optimize tipset Equals func 2020-09-27 09:58:37 +08:00
whyrusleeping
bddd6dd8a8 fix GetPower with no miner address 2020-09-26 11:06:16 -05:00
Łukasz Magiera
3fe0aa5026
Merge pull request #4030 from filecoin-project/feat/export-logging
add logging to chain export
2020-09-26 10:14:32 +02:00
Łukasz Magiera
6a502090f4
Merge pull request #4028 from filecoin-project/asr/address-update
Add an envvar to set address network version
2020-09-26 10:14:10 +02:00
Aayush Rajasekaran
12e97dbea7 Fix docs and linter 2020-09-26 02:59:24 -04:00
Łukasz Magiera
ef28ebb14a Ignition upgrades, much excite. 2020-09-25 23:55:37 -07:00
Steven Allen
a5f13a5b31 Test supported proof types. 2020-09-25 14:36:36 -07:00
Aayush Rajasekaran
d8431ff611 Fix AddSupportedProofTypes 2020-09-25 17:33:25 -04:00
Travis Person
a13d10e42d add logging to chain export 2020-09-25 20:20:18 +00:00
Steven Allen
271ceb968a add v1 support to the state tree 2020-09-25 12:55:10 -07:00
Steven Allen
b8d9d7894f fix vm version 2020-09-25 12:52:16 -07:00
Steven Allen
7d3bd146e6 rebase fixup 2020-09-25 12:51:02 -07:00
Steven Allen
8b35f480c4 initial vm conversion
We're probably going to want to change some of these design decisions down the
road, but this is a good starting point.

* We may want to use a more general test for "is actor valid at epoch". Maybe
just a function?
* I'd like to push some of the actor metadata down into the actor types
themselves. Ideally, we'd be able to register actors with a simple
`Register(validation, manyActors...)` call.
2020-09-25 12:49:39 -07:00
Steven Allen
d9656f5220 add a generic load method for actor state
This will make it easier to load arbitrary actors. We can:

* Type switch (sort of unsafe, may want marker methods?)
* Use this with `vm.MutateActorState`.
2020-09-25 12:49:39 -07: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
edb31e606a correctly load new actors 2020-09-25 12:49:39 -07:00
Steven Allen
8806f27220 fix runtime reflection for upgrade 2020-09-25 12:49:39 -07:00
Steven Allen
858f11992f compile fix 2020-09-25 12:49:39 -07:00
Steven Allen
35562bd2f9 fixup v1 actors for new methods
Also, correctly handle multiple ADT versions.
2020-09-25 12:49:39 -07:00
Aayush Rajasekaran
ebad0ded3d Introduce v1 actors 2020-09-25 12:49:39 -07:00
Aayush Rajasekaran
60e43ccbb1 Add an envvar to set address network version 2020-09-25 15:45:27 -04:00
Steven Allen
bdc782617f return an error when we fail to find a sector when checking sector expiration
Returning nil, nil is a footgun.

fix: https://github.com/filecoin-project/lotus/issues/3984
2020-09-25 11:28:38 -07:00
Dirk McCormick
80a7ed8116 refactor: use abstract types instead of specs-actors 2020-09-25 15:54:27 +02:00
Raúl Kripalani
68663060dc add state.StateTree#Version() accessor. 2020-09-24 17:58:49 +01:00
Łukasz Magiera
85caa48814
Merge pull request #3991 from filecoin-project/feat/nicer-syncwait
Make sync wait nicer
2020-09-24 17:03:21 +02:00
Łukasz Magiera
17a84c9a2c
Merge pull request #3975 from filecoin-project/steb/abstract-actor-policy
Add some actors policy setters for testing
2020-09-24 15:51:41 +02:00
Łukasz Magiera
2867b31d2b
Merge pull request #3208 from austinabell/extratsload
Update beacon entry load error message
2020-09-24 14:19:00 +02:00
Dirk McCormick
3c524ac0e0 refactor: move nonce generation from mpool to wallet 2020-09-24 14:09:42 +02:00
Łukasz Magiera
1a70dd4fb4
Merge pull request #3977 from filecoin-project/steb/remove-cbor-abstraction
Remove a misleading miner actor abstraction
2020-09-24 14:02:59 +02:00
Łukasz Magiera
15eddf0c96 Make sync wait nicer 2020-09-24 13:39:49 +02:00
Łukasz Magiera
ded3a30f55 fix lint 2020-09-24 11:56:54 +02:00
whyrusleeping
38e256cece add some tracing to the vm's blockstore copy 2020-09-23 20:19:20 -07:00
whyrusleeping
b4e03d1759 batch blockstore copies after block validation 2020-09-23 18:53:28 -07:00
Steven Allen
32a699d6a3 Add some actors policy setters for testing
Addresses:
* a307e4593a (r491966115)
* a307e4593a (r491966634)

Note: This puts everything into a policy package to avoid a dependency cycle
between the build package, the miner package, and the types package. This is
also why I introduced a GetPreCommitChallengeDelay function and removed the
variable.
2020-09-23 15:00:52 -07:00
Steven Allen
46f5b62a76 Remove a misleading miner actor abstraction
We shouldn't implement CBOR functions on the "abstract" miner info. Otherwise,
we could end up trying to actually _use_ this "abstract" info when decoding
state (which won't work across version).

Also remove the use of these CBOR functions, and instead explicitly use miner0
types. We'll have to abstract over versions eventually, but we'll probably need
some form of abstract miner builder (or maybe even adding some "add sector",
etc. functions to the current miner abstraction?
2020-09-23 14:49:53 -07:00
Aayush Rajasekaran
e09d291e5d
Merge pull request #3939 from filecoin-project/fix/chain-sync-validation
Validate chain sync response indices when fetching messages
2020-09-23 17:35:14 -04:00
Steven Allen
1c1d23d142 fix out-of-bounds when loading all sector infos
fixes #3972
2020-09-23 12:40:44 -07:00
Łukasz Magiera
a2278e26af
Merge pull request #3887 from filecoin-project/feat/parallel-sync
Parallel fetch for chain sync
2020-09-23 19:24:54 +02:00
Raúl Kripalani
f1ab1af617 add init.State#Remove() for testing. 2020-09-23 17:42:01 +01:00
Aayush Rajasekaran
a876a0ba44 Use actor state addresses 2020-09-23 02:32:40 -04:00
Aayush Rajasekaran
819180f739 Implement inefficient OnAddressMapChange predicate 2020-09-23 02:15:01 -04:00
Aayush Rajasekaran
476e7992e8 Add an error return to all actor state interface methods 2020-09-23 01:51:38 -04:00
Aayush Rajasekaran
e27fc03f55 Reward state interface only needs cbor.Marshaler 2020-09-23 01:42:10 -04:00
Aayush Rajasekaran
ed4bf9b8fe API shouldn't depend on actors directly 2020-09-23 00:51:12 -04:00
Lucas Molas
dcf2735836 move validation from protocol to API 2020-09-22 20:19:31 -03:00
Steven Allen
46fb0e74cd add deal state iterator 2020-09-22 14:09:33 -07:00
Steven Allen
2967c4ec10 use abstract actor type methods 2020-09-22 12:02:29 -07:00
Steven Allen
441d7ff790 cleanup imports some more 2020-09-22 11:14:55 -07:00
Steven Allen
bc24fdbd14 finish migrating statemanager 2020-09-22 11:09:56 -07:00
Steven Allen
ab070f2ebe copy actor object when iterating over actors
This is a pretty big footgun.
2020-09-22 11:09:41 -07:00
Steven Allen
5314ba8c6d remove ptr indirection 2020-09-22 10:55:29 -07:00
Aayush Rajasekaran
1dc69e397e Resolve some unnecessary actor upgrade TODOs 2020-09-22 01:34:21 -04:00
Aayush Rajasekaran
d56da1b014 Refinements to stmgr and utils 2020-09-22 01:34:20 -04:00
Steven Allen
d33dd4f7bc more renames 2020-09-21 16:01:29 -07:00
Steven Allen
3f0106cfe5 migrate lotus-shed/genesis-verify to actor abstraction 2020-09-21 15:18:30 -07:00
Steven Allen
4bab784e40 migrate lotus-shed verifreg to specs-actors abstractions 2020-09-21 15:04:39 -07:00
Steven Allen
916421b247 convert lotus-shed balances 2020-09-21 13:43:47 -07:00
Steven Allen
a41bf74bad fix: remove incorrect variable 2020-09-21 13:25:03 -07:00
Steven Allen
0ab2459fce convert multisig to new actor abstractions 2020-09-21 13:13:38 -07:00
Steven Allen
24ae9205fe cross-version state tree diff 2020-09-21 12:50:12 -07:00
Steven Allen
4cf0c105eb optimize sector loading
And avoid exposing "arrays" via the miner abstraction. We may change these
structures later.
2020-09-21 12:12:08 -07:00
Steven Allen
025663118f non-destructive diff 2020-09-21 10:30:33 -07:00
Łukasz Magiera
0b5e4a9612 Make GetSectorsForWinningPoSt fast again 2020-09-21 18:28:32 +02:00
vyzo
5663b2d697 change GetChainMessages api to include tipsets for validation 2020-09-21 18:58:52 +03:00
vyzo
44b52941f7 add option to validate messages against expected tipset 2020-09-21 18:50:41 +03:00
vyzo
58a85f378c refactor response compressed index validation into its own function 2020-09-21 18:33:31 +03:00
Aayush Rajasekaran
286fe04271 Add some TODOs 2020-09-21 02:52:45 -04:00
vyzo
f135ec8468 fix handling of end of sync 2020-09-21 09:21:25 +03:00
Aayush Rajasekaran
b355eb75eb Add compile-time checks that actors interfaces are correctly implemented 2020-09-21 02:19:32 -04:00
Aayush Rajasekaran
a95e34f742 Fix build 2020-09-21 02:02:33 -04:00
Aayush Rajasekaran
ed285f1114 Abstract SectorOnChainInfo and SectorPreCommitOnChainInfo 2020-09-21 01:09:42 -04:00
Łukasz Magiera
b25dd2a00d More correct / fasterer GetSectorsForWinningPoSt 2020-09-20 23:04:45 +02:00
Aayush Rajasekaran
7c3f638f68 Abstract FilterEstimate, PreCommitDepositForPower, and InitialPledgeForPower 2020-09-19 00:41:24 -04:00
Steven Allen
35bce5a5c6 revert post changes
1. Calling the specific partition/deadline APIs is faster.
2. It's _much_ easier to test this way.
2020-09-18 15:40:49 -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
4a7055c328 fix state loading in vm 2020-09-18 14:46:55 -07:00
Steven Allen
8285eda8e5 migrate storage miner info 2020-09-18 14:46:42 -07:00
Steven Allen
e60027c00a remove todo 2020-09-18 14:22:38 -07:00
Steven Allen
24df873498 rename imports 2020-09-18 14:21:05 -07:00
Steven Allen
8747c6083e abstract over account actor 2020-09-18 14:20:53 -07:00
Steven Allen
fb2b25c297 finish upgrading chainwatch 2020-09-18 13:43:30 -07:00
Łukasz Magiera
70faa36b7f Merge remote-tracking branch 'origin/master' into refactor/net-upgrade 2020-09-18 19:29:06 +02:00
Aayush Rajasekaran
694463ffbe More lint fixes 2020-09-18 03:06:28 -04:00
vyzo
3c72461969 MpoolPushUntrusted API for gateway 2020-09-18 09:40:43 +03:00
Aayush Rajasekaran
37de154a7c Fixup tests 2020-09-18 01:56:21 -04:00
Steven Allen
daa441b989 simplify market diff 2020-09-17 21:48:50 -07:00
Steven Allen
f2a0779bb9 remove specs-actors import 2020-09-17 21:41:36 -07:00
Steven Allen
b2ee59024f improve diff logic
* Make diffing work across versions.
* Start porting more chainwatch logic.
2020-09-17 21:39:34 -07:00
Steven Allen
5bcfee0042 make market diffs work across version upgrades 2020-09-17 16:08:54 -07:00
Steven Allen
dc58f71604 remove unnecessary code
Go does have some nice features, once in a while.
2020-09-17 14:59:10 -07:00
Steven Allen
ae38970526 remove WpostProvignPeriod function 2020-09-17 14:56:11 -07:00
Dirk McCormick
c40c1361f0 fix: paych To() 2020-09-17 18:14:07 +02:00
Łukasz Magiera
82b95e34b7 cbor gen 2020-09-17 17:37:16 +02:00
Łukasz Magiera
6eda53565f Most tests passing 2020-09-17 17:30:24 +02:00
vyzo
6dfc40abc1 error is nil at end, so return batch, nil 2020-09-17 18:23:50 +03:00
vyzo
2946561dec clean up return code 2020-09-17 18:07:01 +03:00
vyzo
d7948fcbcd fix log; we want to log time when we succeed! 2020-09-17 18:07:01 +03:00
vyzo
fb605f6d7f refactor parallel fetch logic into a separate function 2020-09-17 18:07:01 +03:00
vyzo
2a428f09e6 increase exchange ShufflePeersPrefix to 16, use that as the value of concurrent sync requests 2020-09-17 18:07:01 +03:00
vyzo
8a4b629f40 increase sync request batch size to 8 2020-09-17 18:07:01 +03:00
vyzo
b984e94a87 fix bug 2020-09-17 18:07:01 +03:00
vyzo
05a233f84d add some more logging 2020-09-17 18:07:01 +03:00
vyzo
35f6e10646 parallel chain sync 2020-09-17 18:07:01 +03:00
vyzo
61c0b8c3db properly close streams in blocksync
we were leaking streams right and left...
2020-09-17 18:07:01 +03:00
Aayush Rajasekaran
31ff5230bb Get State API almost working 2020-09-17 05:05:32 -04:00
Aayush Rajasekaran
053cfc1cc7 Migrate verifreg actor 2020-09-17 03:55:23 -04:00
hannahhoward
691bd9f442 feat(markets): complete markets conversion
complete markets conversion to using chain/actors types, also replacing DealProposal/DealState
interfaces with structs
2020-09-17 00:43:14 -07:00
Aayush Rajasekaran
e2295c372a Migrate multisig actor 2020-09-17 02:57:45 -04:00
Aayush Rajasekaran
b60614982e Migrate reward actor 2020-09-17 02:42:39 -04:00
Aayush Rajasekaran
9e48dd211a Fixups 2020-09-17 02:34:15 -04:00
Aayush Rajasekaran
b5ba7a0fad Miner migration 2020-09-17 02:21:16 -04:00
hannahhoward
80b6994fe2 feat(market): update state diffing for market actor
Update to abstract actor for markets state diffing. Also move the diff adt functions inside the
abstract actors
2020-09-16 19:14:07 -07:00
Aayush Rajasekaran
b530f25f09 Migrate miner actor 2020-09-16 17:20:25 -04:00
Łukasz Magiera
ccce1a9715
Merge pull request #3877 from filecoin-project/refactor/net-upgrade-paych
Support Network Upgrades: Payment Channel
2020-09-16 20:25:16 +02:00
austinabell
ca956ca57e Merge branch 'master' of github.com:filecoin-project/lotus into async/stransition 2020-09-16 11:23:55 -04:00
Łukasz Magiera
3d61a37fcf
Merge pull request #3880 from filecoin-project/fix/gas-outputs-regression
fix a regression caused by #3800 (GasOutputs zero values)
2020-09-16 12:24:22 +02:00
Łukasz Magiera
0c41522ebf
Merge pull request #3873 from filecoin-project/unify-wdpost-log
Use `window post` for window PoSt related log messages.
2020-09-16 12:00:45 +02:00
Raúl Kripalani
362fc180ec fix a regression caused by #3800. 2020-09-16 10:54:26 +01:00
Aayush Rajasekaran
90853e24cf Add a boolean HasMinPower to return of GetPower 2020-09-16 01:47:24 -04:00
Aayush Rajasekaran
b4ee519282 Partial progress towards switching to miner and power interfaces 2020-09-16 01:37:49 -04:00
hannahhoward
05c11531b1 feat(paych): convert paych actor
build abstraction for paych actor and switch to using it in payment channel manager and state
predicates
2020-09-15 21:06:04 -07:00
whyrusleeping
6670d22fb5 add command to (slowly) prune lotus chain datastore 2020-09-15 20:20:48 -07:00
jennijuju
5c69249ba3 Use window post for window PoSt related log messages. 2020-09-15 21:22:29 -04:00
Steven Allen
454c382e7e migrate StateMinerInitialPledgeCollateral 2020-09-15 18:05:33 -07:00
Aayush Rajasekaran
937ff4e9ae Add a sync test around blocks with bad nonce messages 2020-09-15 20:55:11 -04:00
Aayush Rajasekaran
952f2c2f1e Sever chainstore's dependence on the state tree 2020-09-15 20:41:34 -04:00
Steven Allen
92471d41d6 migrate precommit deposit function 2020-09-15 16:47:58 -07:00
austinabell
e53aee26a3
Make state transition in validation async 2020-09-15 18:36:06 -04:00
Steven Allen
02bc5fab26 add power actor address alias 2020-09-15 14:56:00 -07:00
Steven Allen
e1ba4eb5c4 sub reward actor 2020-09-15 14:55:48 -07:00
Steven Allen
4e01fad0d4 start multisig abstraction 2020-09-15 14:44:03 -07:00
Steven Allen
91e9573863 Compile fixes 2020-09-15 12:13:13 -07:00
Steven Allen
4cd92d8576 remove final WithStateTree 2020-09-15 10:57:32 -07:00
Steven Allen
6bf7976add fix decode 2020-09-15 10:51:18 -07:00
Steven Allen
00c6397ec9 more progress 2020-09-15 10:46:44 -07:00
Łukasz Magiera
d4a7732d0a
Merge pull request #3800 from filecoin-project/asr/gascost
Add an API to get detailed gas costs for a message
2020-09-15 19:13:20 +02:00
Łukasz Magiera
9dad38c9a5 gofmt 2020-09-15 15:29:39 +02:00
Łukasz Magiera
4419850195 state api impl fixes 2020-09-15 15:29:25 +02:00
Łukasz Magiera
4dabab5ce6 state manager progress 2020-09-15 13:04:45 +02:00
Łukasz Magiera
72216fe917
Merge pull request #3647 from filecoin-project/fix/enable-strict-basefee-check
re-enable baseFee lower bound check
2020-09-15 11:38:28 +02:00
Łukasz Magiera
6665a9ca69
Merge pull request #3845 from filecoin-project/sync-manager
syncer: make SyncManager an interface.
2020-09-15 10:28:48 +02:00
Steven Allen
36f920bcd7 progress 2020-09-14 21:55:49 -07:00
Steven Allen
7fa6c1e8d0 add info method to miner state API 2020-09-14 15:45:00 -07:00
Steven Allen
cc4d5306eb Progress 2020-09-14 15:43:12 -07:00
Steven Allen
02dcb5e182 Merge branch 'master' into refactor/net-upgrade 2020-09-14 14:53:57 -07:00
Steven Allen
9804310cc8 Update specs-actors to 0.9.10
Moves the Keyer type (and helpers) into go-state-types.
2020-09-14 14:32:57 -07:00
Raúl Kripalani
dd841f32db syncer: make SyncManager an interface. 2020-09-14 21:58:59 +01:00
Steven Allen
32eeb96ce7 Update to specs-actors 0.9.9
This patch changes the runtime interfaces, to make it possible to abstract over them.
2020-09-14 12:47:39 -07:00
vyzo
172bfacae0 compute baseFee for check even in null rounds 2020-09-14 22:20:26 +03:00
vyzo
0a5494dd79 use the factor in getBaseFeeLowerBound 2020-09-14 22:13:37 +03:00
vyzo
044202b37f use conservative base fee lower bound factor for strict checks 2020-09-14 22:13:37 +03:00
vyzo
d68ec37942 reenable baseFee lower bound check 2020-09-14 22:13:37 +03:00
Aayush Rajasekaran
d1850ea27d Add an API to get detailed gas costs for a message 2020-09-14 14:40:13 -04:00
Łukasz Magiera
fb3f710523 Some post-master merge fixes 2020-09-14 15:18:04 +02:00
Łukasz Magiera
06ec571c20 Merge remote-tracking branch 'origin/master' into refactor/net-upgrade 2020-09-14 15:09:52 +02: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
Raúl Kripalani
6d29d75724 Merge branch 'master' into inmem-journal 2020-09-14 12:17:45 +01:00
Łukasz Magiera
38f87981c1 Fix some build errors 2020-09-14 13:14:06 +02:00
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
vyzo
b78fe0b898 fix deadlock 2020-09-11 21:40:25 +03:00
vyzo
bf1036c78f rename priority variable to protected 2020-09-11 21:12:11 +03:00
vyzo
cf9820137c don't prune locally published messages 2020-09-11 20:32:52 +03:00
Łukasz Magiera
4410da98be
Merge pull request #3766 from filecoin-project/fix/mpool-prune
refactor getBaseFeeLowerBound, use it to prune less aggressively
2020-09-11 11:40:26 +02:00
vyzo
3dfb3e641b refactor getBaseFeeLowerBound, use it to prune less aggressively 2020-09-11 12:15:03 +03: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
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
Jakub Sztandera
6813ab4e65 Add additional metrics
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-09-10 17:41:55 -04:00
Jakub Sztandera
fd714cbceb Remove PackingEfficiency consideration from base fee in an upgrade
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-09-10 17:41:55 -04:00
whyrusleeping
db6bd890d9 condition randomness changes on fork height
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-09-10 17:41:55 -04:00
Steven Allen
7a46c5ff31 [WIP] Fix ticket randomness
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-09-10 17:41:55 -04:00
Aayush Rajasekaran
98a9042c07 Use newest network version in genesiss setup stuff 2020-09-10 17:41:55 -04:00
Aayush Rajasekaran
beba92aed4 Improve network versioning logic 2020-09-10 17:41:55 -04:00
Aayush Rajasekaran
774e068436 Update to specs-actors v0.9.8 2020-09-10 17:41:55 -04:00
Aayush Rajasekaran
86ba21029d Update to go state types 001afaca718c 2020-09-10 17:41:55 -04:00
Aayush Rajasekaran
316ac61875 Update to go state types 3ca0d2890090 2020-09-10 17:41:55 -04:00
Jakub Sztandera
bb0a7f91cc Fix drand non-test
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-09-10 17:41:55 -04:00
Jakub Sztandera
73e54352cd Fix off by one
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
vyzo
72c7d4c886 relax mpool add strictness checks for local pushes
So that a node can have more than 1k pending messages for its own local addresses.
2020-09-10 09:55:50 +03:00
Aayush Rajasekaran
e1a0cf6ca5 Add a checkpoint test 2020-09-09 19:21:48 -04:00
Aayush Rajasekaran
183df4c135 Fix IsAncestorOf 2020-09-09 19:09:55 -04:00
vyzo
d369f542c5 warn when optimal selection fails to pack a block and we fall back to random selection 2020-09-09 23:17:09 +03:00
Jakub Sztandera
ef18f93609
Merge pull request #3698 from filecoin-project/fix/mpool-packing-failure
fix mpool optimal selection packing failure
2020-09-09 21:38:26 +02:00
Aayush Rajasekaran
f0554676dd Explicitly check tipsetkeys when considering checkpoint 2020-09-09 14:34:05 -04:00
Aayush Rajasekaran
5c852e26c2 Add a SyncUnmarkBad API 2020-09-09 14:34:05 -04:00
Aayush Rajasekaran
5e3c178b9e Add a sync test for checkpointed tipsets 2020-09-09 14:34:04 -04:00
Aayush Rajasekaran
35aa78dad9 Allow marking a certain tipset as checkpointed 2020-09-09 14:34:00 -04:00
vyzo
cf515bc5ca add selection test with real world messages dumped from a live node mpool 2020-09-09 20:46:26 +03:00
vyzo
97cbfa11b7 fix nasty bug in optimal selection
the sort has to account for negative gasPerf and be stable; go figure.
2020-09-09 20:45:24 +03:00
Łukasz Magiera
1d78ffc04d
Merge pull request #3676 from filecoin-project/feat/mpool-replace-auto
add an auto flag to mpool replace
2020-09-09 19:31:43 +02:00
whyrusleeping
e9b85f5acb ensure replaced message can properly RBF 2020-09-09 10:23:41 -07:00
Łukasz Magiera
cb3b0ab2bb Merge remote-tracking branch 'origin/master' into blocksync-refactor 2020-09-09 19:19:05 +02:00
vyzo
194b6eb9d8 fix issue with gasLimit check for trimming (> instead of >=) 2020-09-09 12:58:51 +03:00
vyzo
0b09082450 adjust optimal selection to always try to fill blocks 2020-09-09 12:37:03 +03:00
Aayush Rajasekaran
06b814b627
Merge pull request #3673 from filecoin-project/fix/long-syncs-over-upgrade
pass tipset through upgrade logic
2020-09-08 22:28:42 -04:00
whyrusleeping
8a8f0ab3ec pass tipset through upgrade logic 2020-09-08 13:45:44 -07:00
Łukasz Magiera
1ef0359731
Merge pull request #3668 from filecoin-project/feat/sync-fetching-messages-state
Add StageFetchingMessages to sync status
2020-09-08 21:15:05 +02:00
Jakub Sztandera
44f4372ca3
Add StageFetchingMessages to sync status
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-09-08 20:42:20 +02:00
vyzo
26ff596983 fix very minor bug in repub baseFeeLowerBound
messages will not be accepted if the GasFeeCap is less than minimumBaseFee, but it doesn't hurt
to be correct.
2020-09-08 19:02:05 +03:00
Raúl Kripalani
b33db9c1ab Merge branch 'master' into blocksync-refactor 2020-09-08 14:22:43 +01:00
Łukasz Magiera
867469e9b3
Merge pull request #3648 from filecoin-project/fix/dont-use-latency
Don't use latency as initital estimate for blocksync
2020-09-08 14:56:23 +02:00
Jakub Sztandera
b66058e417
Add 0 guard
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-09-08 12:19:37 +02:00
Jakub Sztandera
ba9678bd61
Use for to iterate over channel
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-09-08 12:11:30 +02:00
Jakub Sztandera
74e577610a
Forward peers from hello to blocksync
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-09-08 10:18:51 +02:00
vyzo
37ec1a978e nicer check using Time objects 2020-09-08 10:47:41 +03:00
vyzo
27fa9969f3 fix isChainNearSync check in block validator 2020-09-08 10:26:27 +03:00
Jakub Sztandera
93176c91f4
Track time in relation to request size
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-09-08 09:06:31 +02:00
Jakub Sztandera
043e62ab63
Don't use latency as initital estimate for blocksync
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-09-08 08:59:05 +02:00
Aayush Rajasekaran
c77f5f6252
Revert "only subscribe to pubsub topics once we are synced" 2020-09-08 00:32:26 -04:00
whyrusleeping
d1cf445327 use defined constant for fork height 2020-09-07 16:18:22 -07:00
whyrusleeping
26ec0716b9 fix lint errors 2020-09-07 16:12:44 -07:00
whyrusleeping
97af576f6a Implement faucet funds reallocation logic
use all committed sectors instead of power

give all miners who had at least a sector on friday a base amount

include genesis miner in redistribution

drop back to 1,000,000
2020-09-07 16:06:13 -07:00
Aayush Rajasekaran
0e986df7e5
Merge pull request #3627 from filecoin-project/asr/specs-update-0.9.7
Update to specs 0.9.7 and markets 0.6.0
2020-09-07 18:00:56 -04: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
Jakub Sztandera
46ee2eeded
Upgrade to correct fork treshold
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-09-07 23:07:33 +02:00
Jakub Sztandera
704db225d1
Update the fork point
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-09-07 22:45:06 +02:00
Jakub Sztandera
ce0e9594df
Update to go-state-types
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-09-07 22:44:12 +02:00
Jakub Sztandera
835b7eb6f7
Make allowNegativeChains a function
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-09-07 22:44:12 +02:00
vyzo
172ff846fd
decouple negative chain selection from base fee lower bound validation
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-09-07 22:44:12 +02:00
vyzo
97fddc45d9
temporarily allow negative perfoming chains
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-09-07 22:44:09 +02:00
whyrusleeping
5654322f54
introduce logic to perform base fee tamping around the upgrade time
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-09-07 22:31:36 +02:00
Aayush Rajasekaran
d678fe4bfa Fix tests 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
anorth
a8dcea1422 Remove use of exitcode.SysErrInvalidParameters 2020-09-07 15:48:41 -04:00
vyzo
2233751668 use the baseFeeLowerBound for computing repub message chains 2020-09-07 21:53:30 +03: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
41222792ed add docstring for verifyMsgBeforeAdd 2020-09-07 20:26:51 +03:00
vyzo
5659faf7f0 don't immediately publish messages that cannot be included in the next 20 blocks 2020-09-07 20:20:49 +03:00
vyzo
2e75d9c80a be explicit about republish interval, check against timecache duration 2020-09-07 20:20:49 +03:00
vyzo
0fcf8838cc improve republish logic to only republish messages that can be included in the next 20 blocks 2020-09-07 20:20:49 +03:00
Łukasz Magiera
758aae8556
Merge pull request #3586 from filecoin-project/feat/expected-height-metric
metrics: add expected height metric
2020-09-07 19:09:06 +02:00
Łukasz Magiera
ffbbd968c2
Merge pull request #3602 from filecoin-project/feat/delayed-pubsub-join
only subscribe to pubsub topics once we are synced
2020-09-07 19:08:21 +02:00
vyzo
e3aaedbc33 fix tests 2020-09-07 19:46:58 +03:00
Łukasz Magiera
f6f5405a2c Fix lint 2020-09-07 18:21:45 +02:00
Łukasz Magiera
551ff6a6fb
Merge pull request #3608 from filecoin-project/fix/second-argument-error-message
fix: second argument error message
2020-09-07 18:06:22 +02:00
Łukasz Magiera
d3e5092b43
Merge pull request #3611 from filecoin-project/fix/tscache-nil-best
chain events: if cache best() is nil, return chain head
2020-09-07 18:05:34 +02: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
Dirk McCormick
76a1b3286b fix: if cache best is nil, return chain head 2020-09-07 14:43:06 +02:00
Alan Shaw
9d9d2a2a98
fix: second argument error message
Second argument should be a pointer, not runtime.
2020-09-07 12:29:40 +01:00
Raúl Kripalani
798061506e decommission chain validation. 2020-09-07 11:34:36 +01:00
Travis Person
f7b52d16f5 metrics: add expected height metric 2020-09-07 02:57:12 +00:00
vyzo
e24a29b146 fix tests that touch the mpool; mock block must have a ParentBaseFee 2020-09-06 11:55:43 +03:00
vyzo
ffb2640736 use faster lookup for base fee 2020-09-06 11:55:43 +03:00
vyzo
f9492691a6 don't check baseFee lower bound for local messages 2020-09-06 11:55:43 +03:00
vyzo
1c0e6d76f0 add defensive check for minimum GasFeeCap for inclusion within the next 20 blocks 2020-09-06 11:55:43 +03:00
Łukasz Magiera
6bdd433570
Merge pull request #3538 from filecoin-project/steb/safe-exports
Robustify state manager against holes in actor method numbers
2020-09-05 21:58:03 +02:00
Łukasz Magiera
f58cbc2594
Merge pull request #3557 from filecoin-project/fix/mpool-repub-negative
republish messages even if the chains have negative performance
2020-09-05 21:48:39 +02:00
Łukasz Magiera
1e190e462a
Merge pull request #3562 from filecoin-project/fix/mpool-log-spam
reduce mpool add failure log spam
2020-09-05 21:47:29 +02:00
Łukasz Magiera
780f6dba34 Remote wallet backends 2020-09-05 21:39:09 +02:00
vyzo
5037282b98 add test for priority selection with negative chains 2020-09-05 22:15:18 +03:00
vyzo
0b3685e529 fix selection bug; priority messages were not included if other's chains were negative 2020-09-05 21:30:02 +03:00
vyzo
275f071b12 reduce mpool add failure log spam 2020-09-05 00:28:13 +03:00
Łukasz Magiera
f90cfda2e6 wallet: Add interface layer 2020-09-04 22:18:03 +02:00
vyzo
ad8d550d73 remove unused ts argument from Trim, replace it with allowNegative specifier 2020-09-04 22:32:30 +03:00
Steven Allen
fceeaf42ca Robustify state manager against holes in actor method numbers
Also, don't simply assume that the field order matches the method numbers in
`builtin.Method*` structs.
2020-09-04 12:26:55 -07:00
Steven Allen
30fdff17b5 Skip nil exports
The actors may skip previously used but no longer defined method numbers.
2020-09-04 12:26:55 -07:00
vyzo
6d53862142 republish messages even if the chains have negative performance 2020-09-04 22:16:10 +03:00
Raúl Kripalani
1ec534d607 Merge branch 'master' into inmem-journal 2020-09-04 10:55:40 +01:00
Raúl Kripalani
905168e72e fix lint errors. 2020-09-04 10:54:56 +01:00
Łukasz Magiera
01449e486c
Merge pull request #3528 from filecoin-project/fix/sele-gas-reward
Fix calculation of GasReward in messagepool
2020-09-03 20:41:28 +02:00
Jakub Sztandera
8111b227c4
Appease the linter
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-09-03 20:19:01 +02:00
Jakub Sztandera
8bb471bccd
Add getGasPerf test
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-09-03 20:19:01 +02:00
Jakub Sztandera
5074b526d0
Fix calculation of GasReward in messagepool
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-09-03 19:36:03 +02:00
Raúl Kripalani
97ff90f8fa fix imports. 2020-09-03 15:51:26 +01:00
vyzo
d20b6adfd2 refuse to add duplicates in the mpool 2020-09-03 15:28:44 +03:00
vyzo
a4c650316a fix test 2020-09-03 15:28:44 +03:00
vyzo
28f57667f0 cap MaxNonceGap to 4, add delay between batch messages during republish 2020-09-03 15:28:44 +03:00
vyzo
f53d2e3a46 cap MaxNonceGap to 16 2020-09-03 15:28:44 +03:00
vyzo
7b76aa2078 warn when adding a nonce-gapped message to the mpool 2020-09-03 15:28:44 +03:00
vyzo
d76a3b87c5 ignore messages with large nonce gaps 2020-09-03 15:28:44 +03:00
vyzo
da6d384300 fix tests 2020-09-03 15:28:44 +03:00
vyzo
4c489d18a2 track expected nonce in mpool, refuse messages with large gaps 2020-09-03 15:28:44 +03:00
austinabell
6b63fa379f
format 2020-09-02 16:45:50 -04:00
austinabell
485f13de12
Remove load check 2020-09-02 16:45:23 -04:00
austinabell
7f3ba0e6eb Merge branch 'master' of github.com:filecoin-project/lotus into extratsload 2020-09-02 16:44:06 -04:00
Lucas Molas
ca8f5861fe
Update chain/blocksync/server.go
Co-authored-by: Łukasz Magiera <magik6k@users.noreply.github.com>
2020-09-02 17:07:39 -03:00
Raúl Kripalani
3206f92063 Merge branch 'master' into inmem-journal 2020-09-02 19:50:52 +01:00
whyrusleeping
9a5542100a load fewer messages from disk when serving blocksync requests 2020-09-02 11:43:05 -07:00
whyrusleeping
2b16e69e90 allow snapshot importing 2020-09-02 17:15:10 +02:00
whyrusleeping
09ebd1a557 allow exporting a number of recent chain state trees 2020-09-02 17:15:10 +02:00
austinabell
ba881eb4cf
Remove height from chain rand 2020-09-01 15:48:16 -04:00
Aayush Rajasekaran
93814cc85a
Merge pull request #3392 from filecoin-project/fix/mpool-priority-selection
Tweak priority selection to not select negative perfoming chains
2020-08-31 19:22:12 -04:00
刘林欣
0926f95979 remove the unnecessary err check 2020-08-31 15:11:45 +08:00
vyzo
648130eec5 don't include negative performing chains in priority message selection 2020-08-29 15:55:19 +03: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
a62e44c4e5 Fix lint 2020-08-29 02:13:38 +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
vyzo
806f7dd15f windowSize should not exceed blocksync.MaxRequestLength 2020-08-28 23:18:06 +03:00
vyzo
63a60cdd75 be more conservative in increasing the window size, check that we actually had more messages 2020-08-28 23:09:48 +03:00
vyzo
3935fd77ac remember syncer windowSize 2020-08-28 22:52:40 +03:00
vyzo
4e7fd5b6d7 sync: increase window size when successful fetching messages 2020-08-28 22:03:06 +03:00
vyzo
1f660c9e04 sync: half window size and retry when fetching messages fails 2020-08-28 18:45:20 +03:00
Łukasz Magiera
20ffce5c0d Merge remote-tracking branch 'origin/master' into fix/some-fsm-issues 2020-08-28 16:47:25 +02:00
lanzafame
64768f093d rename local recordFailure func 2020-08-28 17:15:11 +10:00
lanzafame
a24db6c584 refactor block validate recordFailure func 2020-08-28 17:11:59 +10:00
lanzafame
050a0ec5e4 further reduce code duplication 2020-08-28 17:01:45 +10:00
lanzafame
0254e4b365 reduce code duplication 2020-08-28 16:53:59 +10:00
lanzafame
094baf8aa9 distinguish local message validation failures from remote 2020-08-28 16:11:24 +10:00
Łukasz Magiera
86c936759b
Merge pull request #3357 from filecoin-project/fix/block-validator-power
ignore, don't reject block if we can't determine power
2020-08-28 00:24:53 +02:00
austinabell
39ef3a701b
Remove unsigned message pointer from Runtime 2020-08-27 17:34:45 -04:00
vyzo
708a8b6543 flag to allow add to skip limit check
essential for correctness in the revert case
2020-08-28 00:04:21 +03:00
Łukasz Magiera
6c7874c883 Merge remote-tracking branch 'origin/master' into fix/some-fsm-issues 2020-08-27 21:37:08 +02:00
vyzo
6c3d8ec1de ignore, don't reject block if we can't determine power 2020-08-27 16:53:53 +03:00
Łukasz Magiera
df635579c4 storagefsm: Handle sectors with expired deals better 2020-08-27 13:51:38 +02:00
whyrusleeping
a33784c434 print block 'age' when validating blocks during sync 2020-08-26 14:48:53 -07:00
vyzo
038e83b647 log error if we trip over too many pending messages for actor 2020-08-26 22:55:39 +03:00
vyzo
82ef0529d8 named error for too many pending messages 2020-08-26 22:48:03 +03:00
vyzo
6abfbbddd5 fix tests 2020-08-26 22:44:47 +03:00
vyzo
ad889a7240 rate limit messages per actor by enforcing maximum pending message limit 2020-08-26 22:40:10 +03:00
vyzo
d3e95d6b77 cast min base fee to uint64 2020-08-26 21:37:32 +03:00
vyzo
8db262c941 check gas fee cap for minimum value 2020-08-26 21:23:28 +03:00
vyzo
793eda986b comment out Value inclusion for required funds tracking
we are not sure whether we want it yet.
2020-08-26 21:10:46 +03:00
vyzo
8848c549a0 move msg serialization outside of lock, consistently use curTs 2020-08-26 19:42:56 +03:00
vyzo
4919a005d3 always verify message min gas 2020-08-26 19:37:27 +03:00
Raúl Kripalani
cb8e105a94 reduce diff noise. 2020-08-26 16:44:06 +01: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
vyzo
7a7066896e better code for getRequiredFunds 2020-08-26 15:37:42 +03:00
vyzo
a2c0c10d2a correctly account for message replacement in required funds tracking 2020-08-26 15:27:09 +03:00
vyzo
c473d3c682 rename ErrValidationFailure to ErrSoftValidationFailure
to make it clear to readers that this failure is soft; we might be out of sync.
2020-08-26 15:16:04 +03:00
vyzo
87e6c0973a include message Value only in soft validation failures 2020-08-26 15:13:50 +03:00
vyzo
78876947a4 ErrBroadcastAnyway is now ErrValidationFailure 2020-08-26 15:03:13 +03:00
vyzo
b59f58435c fix tests 2020-08-26 14:58:32 +03:00
vyzo
4adb83eaae check aggregate pending message required funds against balance 2020-08-26 14:58:26 +03:00
vyzo
4ac9828b0c track required funds in message set 2020-08-26 14:38:26 +03:00
vyzo
77f6e0d4f8 refactor balance check, apply it in PushWithNonce 2020-08-26 14:23:34 +03:00
vyzo
835dbfe001 check message before adding in PushWithNonce 2020-08-26 14:13:46 +03:00
vyzo
da9630c561 remove duplicate check
gas limit is checked against block gas limit in ValidForBlockInclusion
2020-08-26 14:02:34 +03:00
Whyrusleeping
14cda27e9f
Merge pull request #3294 from filecoin-project/feat/sync-tweaking
Add some tracing and the ability to tweak message fetch window size
2020-08-25 13:25:22 -07:00
whyrusleeping
a553db4b82 Add some tracing and the ability to tweak message fetch window size 2020-08-25 12:39:17 -07:00
vyzo
6b3282150b appease linter 2020-08-25 14:03:49 +03:00
vyzo
58cfac9f67 add test for message republish 2020-08-25 13:57:02 +03:00
vyzo
62b15ecc12 remove bug line 2020-08-25 13:41:20 +03:00
vyzo
6b9d392d0e add another priority selection test 2020-08-25 13:36:03 +03:00
vyzo
9c68123ede add test for Updates, fix behaviour for closed mpool 2020-08-25 13:29:09 +03:00
vyzo
7049b6478c add test for Clear 2020-08-25 13:24:11 +03:00
vyzo
0e6d34c0c9 add test for loadLocal 2020-08-25 13:16:55 +03:00
vyzo
a01fa11a26 exercise debug code, fix deadlock 2020-08-25 13:03:50 +03:00
vyzo
7e81081899 initialize mpool ts _before_ loading local messages 2020-08-25 08:49:15 +03:00
Jakub Sztandera
8cc8a277a1
Remove Println
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-08-25 04:37:35 +02:00
whyrusleeping
a5c56dde10 add test to verify actor state fix works properly 2020-08-24 19:35:54 -07:00
Jakub Sztandera
7f427b8001
Fix harness weirdness
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-08-25 04:12:33 +02:00
Jakub Sztandera
33b12782e4
Take into account messages in current tispet by executing it
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-08-25 04:02:06 +02:00
Jakub Sztandera
b2ff231c48
Fix error fmt string
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-08-25 03:14:52 +02:00
Jakub Sztandera
d921791c55
Add comment
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-08-25 03:13:43 +02:00
whyrusleeping
05d65c3f88 slightly better than panicking 2020-08-24 17:40:12 -07:00
whyrusleeping
cf3298cd04 more correctly handle discrepancies between mempools head and the mining base 2020-08-24 17:21:03 -07:00
Jakub Sztandera
aacfcba400
Check ValidForBlockInclusion in mpool
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-08-25 01:01:16 +02: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
f200ac6287
Merge pull request #3252 from filecoin-project/fix/burnt-funds-state
fix setup of burnt funds actor state
2020-08-24 11:43:34 -07:00
whyrusleeping
1447a66515 randomize ticket in genesis creation 2020-08-24 11:33:49 -07:00
Łukasz Magiera
b87c89ad16 mod tidy, fix lint 2020-08-24 12:51:55 +02:00
whyrusleeping
27e3f8ee29 fix setup of burnt funds actor state 2020-08-22 18:53:44 -07:00
Łukasz Magiera
0806fd651a
Merge pull request #3183 from filecoin-project/steb/lint-all
Lint everything
2020-08-22 21:47:41 +02:00
Łukasz Magiera
bf579a86a0
Merge pull request #3182 from filecoin-project/anorth/versionuint
Change Message.Version to be a uint64
2020-08-22 21:29:49 +02:00
vyzo
817358f1bb better semantics for mpool clear local argument
local messages should be kept unless the parameter is true
2020-08-21 23:48:35 +03:00
vyzo
087955e927 add localonly option to MpoolClear 2020-08-21 23:32:41 +03:00
vyzo
e33d398c33 remove pending local messages from the datastore when clearing the mpool 2020-08-21 23:32:41 +03:00
vyzo
3027283756 add MpoolClear api 2020-08-21 23:32:41 +03:00
vyzo
161cb32078 recover from errors in head change 2020-08-21 23:32:41 +03:00
Steven Allen
5733c71c50 Lint everything
We were ignoring quite a few error cases, and had one case where we weren't
actually updating state where we wanted to. Unfortunately, if the linter doesn't
pass, nobody has any reason to actually check lint failures in CI.

There are three remaining XXXs marked in the code for lint.
2020-08-20 20:46:36 -07:00
whyrusleeping
4bf7619d32 Actually set genesis remainder account balance 2020-08-20 18:59:16 -07:00
austinabell
e4daadbfcf
Remove extra tipset load from checking beacon entries 2020-08-20 17:54:59 -04:00
anorth
4ce71bce2d Change Message.Version to be a uint64 2020-08-20 14:37:21 +10:00
Łukasz Magiera
6e492e41d1
Merge pull request #3165 from filecoin-project/fix/validator-ignore-nonce-errors
ignore, don't reject messages with nonce that is too low
2020-08-20 00:00:20 +02: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
vyzo
c7a6e32c96 ignore, don't reject messages with nonce that is too low
we seem to have a problem with this leading to many rejected messages and negative scores for
potentially innocent peers.
2020-08-19 13:20:16 +03: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
71aa3a59d9
Merge pull request #3047 from filecoin-project/asr/burn-genesis
Do not include the burnt funds actor as a genesis account actor
2020-08-18 23:10:32 +02:00
Łukasz Magiera
574a22de6c genesis: Set remainder account balance correctly 2020-08-18 22:52:25 +02:00
Łukasz Magiera
1dd554ad71
Merge pull request #3155 from filecoin-project/misc/selection-misc
Use conditional probability for miners
2020-08-18 21:56:41 +02:00
vyzo
6d9707c784 fix OptimalSelection3 test 2020-08-18 22:24:07 +03:00
Łukasz Magiera
d23cd2e507
Merge pull request #3136 from filecoin-project/asr/genesis-hardcode
Create a testnet version of setupGenesisActors
2020-08-18 21:21:04 +02:00
Jakub Sztandera
e0b72ba049
Reduce number of runs to 1
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-08-18 21:10:04 +02:00
Jakub Sztandera
4d01cbfb62
Increase precision of output
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-08-18 21:10:04 +02:00
Jakub Sztandera
8d4427a8bc
add best ticket reward to tests
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-08-18 21:10:04 +02:00
Jakub Sztandera
8bca545cab
Add test for winnerProba
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-08-18 21:10:04 +02:00
Jakub Sztandera
9c98cf8bc1
Fix blockProbabilities
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-08-18 21:10:04 +02:00
Jakub Sztandera
8acd926636
Use conditional probability for noWinners, fix tests
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-08-18 21:10:04 +02:00
Jakub Sztandera
12f7ead55e
Merge pull request #3144 from filecoin-project/feat/dedup-for-basefee
Basefee change depends on unique messages not all messages
2020-08-18 21:08:29 +02:00
Łukasz Magiera
b23cac19ab
Merge pull request #3151 from filecoin-project/asr/specs-update
Update to specs-actors v0.9.3
2020-08-18 20:56:51 +02:00
Aayush Rajasekaran
446a4f6272 Update to specs-actors v0.9.3 2020-08-18 14:24:46 -04:00
whyrusleeping
42730bcf1c handle potential overallocation 2020-08-18 10:56:54 -07:00
Aayush Rajasekaran
214eeccb18 Create a testnet version of setupGenesisActors 2020-08-18 13:56:47 -04:00
Łukasz Magiera
2570712a29
Merge pull request #3135 from filecoin-project/feat/genesis-block-linkage
proper genesis block history
2020-08-18 19:28:55 +02:00
Jakub Sztandera
c9fdd4bee2
Fix testgrounds build
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-08-18 17:40:53 +02:00
Jakub Sztandera
c841f26256
Basefee change depends on unique messages not all messages
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-08-18 15:28:50 +02: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
Aayush Rajasekaran
8942c02f28 Add a reminder comment 2020-08-18 06:01:48 -04:00
vyzo
4287f76ed4 fix deadlock in mpool.Push 2020-08-18 10:19:46 +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
vyzo
ff7f0a9dcd
Merge pull request #3090 from filecoin-project/fix/pubsub-validation-clown-shoes
Fix clown shoes in pubsub validation
2020-08-17 23:31:45 +03:00
vyzo
ca552cf83b deduplicate some block validation logic 2020-08-17 21:03:08 +03:00
Łukasz Magiera
6ef7a30b19
Merge pull request #3089 from filecoin-project/integrate/storage-fsm
integrate extern/{storage-fsm,sector-storage} into lotus source tree
2020-08-17 18:37:54 +02:00
Łukasz Magiera
704578c9c2
Merge pull request #3108 from austinabell/msload
Remove unnecessary miner state load for checking slashed
2020-08-17 18:11:09 +02:00
austinabell
c3c6fda9d5
Remove unnecessary miner state load for checking slashed 2020-08-17 09:32:47 -04: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
vyzo
3b6e2bdb7b trigger early republish from head changes 2020-08-17 10:03:39 +03:00
vyzo
ae88a99c84 add some lightweight validation of local messages 2020-08-17 09:04:22 +03:00
vyzo
884d4ad9df fix clown shoes pubsub validation: we always accept our own self-published messages 2020-08-16 20:46:19 +03:00
Raúl Kripalani
3c17cd655e integrate extern/sector-storage into lotus proper. 2020-08-16 11:09:58 +01:00
hannahhoward
aa419155f6 feat(fundmgr): temp fix for funding issues 2020-08-14 19:37:20 -07:00
Aayush Rajasekaran
0359a458e4 Include more info in StateCirculatingSupply 2020-08-14 16:53:30 -04:00
vyzo
a5d2ec0df8 appease linter 2020-08-14 10:12:55 +03:00
vyzo
b844f70a3c make competitve selection test parameteric on distribution function, add test for Zipf distribution 2020-08-14 10:09:25 +03:00
Aayush Rajasekaran
5702ea236c Do not include the burnt funds actor as a genesis account actor 2020-08-13 20:19:47 -04:00
Jakub Sztandera
f27a122787
Use Zipf distribution for messages
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-08-13 20:22:56 +02:00
vyzo
9aa8791920 make selection2 test less touchy 2020-08-13 20:02:08 +03:00
vyzo
2eff03fa1f small fixes in optimal selection
1. Remove noop updates from the previous dependencies
2. Update subsequent dependencies, which was the intention
2020-08-13 19:49:07 +03:00
Jakub Sztandera
0daed04c07
Don't run the test 50 times
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-08-13 14:08:11 +02:00
vyzo
09f5a64ce0
use gasPerf for negative performance check
it's the same in actually because effPerf<0 iff gasPerf<0, but we should be consistent

Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-08-13 14:08:11 +02:00
vyzo
f3eec33bec
make OptimalSelection3 test pass
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-08-13 14:08:11 +02:00
vyzo
1aa8b6cab2
make OptimalSelection2 test pass
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-08-13 14:08:11 +02:00
vyzo
0f5598e59b
compute average boost in tests
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-08-13 14:08:11 +02:00
vyzo
5e8ae7498a
only adjust next chains if they have positve perf
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-08-13 14:08:11 +02:00
vyzo
7bbf1c7db2
don't mix negative performing chains with their parent, add some comments
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-08-13 14:08:10 +02:00
Jakub Sztandera
f35555964d
Better "optimal selection
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-08-13 14:08:10 +02:00
vyzo
d25f386bb5
mixin the previous chain's effective performance to capture effect of dependencies
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-08-13 14:08:10 +02:00
Łukasz Magiera
3b23ab952b gofmt 2020-08-13 13:44:43 +02:00
frrist
69a472c4ea bug: fix id_address_map table conflicts on reorg 2020-08-12 16:54:45 -07:00
frrist
ce21557d64 bug: fix bug in predicate and add tests 2020-08-12 16:52:08 -07:00
whyrusleeping
b3a31d8823 add function to check entire state tree balance 2020-08-12 15:45:46 -07:00
Steven Allen
3ef3f570fb Fix lint errors an broken tests 2020-08-12 23:16:44 +02:00
Aayush Rajasekaran
c73d597d87
Merge pull request #2961 from filecoin-project/asr/genesis-premined
Revise TotalCircSupply
2020-08-12 17:12:54 -04:00
Łukasz Magiera
12f7e2d9bf Use a struct for send metadata in MpoolPushMessage 2020-08-12 22:17:29 +02:00
Aayush Rajasekaran
5b280057b8 Move genesis locked funds into filVested 2020-08-12 16:16:35 -04:00
Łukasz Magiera
e1a1b325bc Merge remote-tracking branch 'origin/next' into feat/max-msg-fee-config 2020-08-12 21:55:03 +02:00
Łukasz Magiera
43586ed9a1
Merge pull request #3000 from filecoin-project/feat/mpool-add-semaphore
Add semaphore in push and friends to reduce lock contention
2020-08-12 21:53:59 +02:00
Łukasz Magiera
ba28169356 Merge remote-tracking branch 'origin/master' into next 2020-08-12 21:33:06 +02:00
Aayush Rajasekaran
b6b5a79833 Get FilMined from the reward actor's state, not balance 2020-08-12 15:32:11 -04:00
Aayush Rajasekaran
165bcc1e38 Extract stmgr's genesis infos into a new struct 2020-08-12 15:32:11 -04:00
Aayush Rajasekaran
48ab706691 Subtract out genesis pledge and market funds when calculating circ supply 2020-08-12 15:32:11 -04:00
Aayush Rajasekaran
fe2da35a45 Move GetCircSupply out of the vm, and into stmgr 2020-08-12 15:32:07 -04:00
Aayush Rajasekaran
5933e64de1 Include premined actors in vested funds calculation 2020-08-12 15:19:48 -04:00
Łukasz Magiera
bfa0ae16b0
Merge pull request #2965 from filecoin-project/steb/update-actors
Update specs-actors & cbor-gen
2020-08-12 21:18:05 +02:00
Jakub Sztandera
f7c222e42e
Validate message pool config, validate GasPremium < GasFeeCap
don't use configured RBF for mpool

Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-08-12 20:31:34 +02:00
Jakub Sztandera
c68b023d3f
Merge pull request #2939 from filecoin-project/feat/mpool-repub
Update messagepool republish logic
2020-08-12 20:08:28 +02:00
Łukasz Magiera
6fe743f3a9 Fix tests 2020-08-12 20:03:07 +02:00
Łukasz Magiera
03c1776b43 types: Add text (un)marshaler on FIL 2020-08-12 19:58:39 +02:00
Steven Allen
e18904bff5 [WIP] fix post submission 2020-08-12 10:33:18 -07:00
Whyrusleeping
ed72aa1307 implement randomness distinction 2020-08-12 10:32:39 -07:00
Steven Allen
9248e5a572 Update specs-actors, cbor-gen, and go-address 2020-08-12 10:32:39 -07:00
Steven Allen
9135a5d048 Pass bitfields by-value
This ensures we can't end up decoding nil bitfields from clients when not
expecting them.

Part of https://github.com/filecoin-project/specs-actors/issues/895. Please see
this issue for details and leave any comments there.
2020-08-12 10:32:39 -07:00
vyzo
f2ac17845b relinquish the lock while signing in PushWithNonce 2020-08-12 20:26:58 +03:00
Łukasz Magiera
d0147aa50f Add maxFee param to MpoolPushMessage 2020-08-12 19:06:16 +02:00
Łukasz Magiera
e2c6cc6c6d
Merge pull request #2958 from filecoin-project/asr/sync-test
MessagesForTipset should filter out bad nonce messages
2020-08-12 13:05:57 +02:00
vyzo
7be18df6ea add semaphore in push and friends to reduce lock contention 2020-08-12 10:38:40 +03:00
vyzo
472e502218 fix republishing chain selection to account for edge case of inordinately long chains 2020-08-12 09:41:02 +03:00
vyzo
7b16fe3792 hold ts lock longer 2020-08-12 09:18:04 +03:00
vyzo
47f81f1ad6 increase repub message limit to 30 2020-08-12 09:13:57 +03:00
vyzo
cf34fe5cc3 extend the republish interval to something more reasonable
pubsub timecache duration + 5 blocks + propagation delay
2020-08-12 09:13:57 +03:00
vyzo
7396212c89 slightly increase the replublish interval to include the propagation delay as well 2020-08-12 09:13:57 +03:00
vyzo
e876617c82 new message republishing logic 2020-08-12 09:13:57 +03:00
vyzo
42951d05a5 refactor messagepool provider out of the main messagepool implementation 2020-08-12 09:13:57 +03:00
Aayush Rajasekaran
922d568e12 Add checks to ValidForBlockInclusion 2020-08-11 19:51:12 -04:00
whyrusleeping
1fc768fb32 add env vars to configure chain store cache sizes 2020-08-11 15:07:17 -07:00
Jakub Sztandera
2efb18f677
Small fixes to mpool Trim
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-08-11 23:55:06 +02:00
Jakub Sztandera
d6f9383528
Merge pull request #2979 from filecoin-project/feat/mpool-optimal-seletion
nearly optimal message pool seletion
2020-08-11 23:45:43 +02:00
Jakub Sztandera
f018e870dc
Address review
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-08-11 23:35:06 +02:00
vyzo
9032163c5a turn probability eyeballing into an actual test 2020-08-11 20:47:50 +03:00
vyzo
a467deede6 fix typos in comment 2020-08-11 20:20:59 +03:00
vyzo
2aaf14b558 mute timing logs if they are under 1ms 2020-08-11 20:00:51 +03:00
Łukasz Magiera
01af855450
Merge pull request #2983 from nikkolasg/feat/cachedrand
Use cache of verified drand values
2020-08-11 18:34:14 +02:00
vyzo
d3baf2b9eb fix edge case in chain creation 2020-08-11 19:32:28 +03:00
Łukasz Magiera
0409c5a482
Merge pull request #2944 from filecoin-project/feat/stmgr-wait-ignore-gas
stmgr: Allow replacing gas values in WaitMsg
2020-08-11 17:51:28 +02:00
Jakub Sztandera
56e3f7da7d
Fix getGasReward and Trim
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-08-11 17:18:46 +02:00
Jakub Sztandera
4da3aedacb
Work on competitve test a bit
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-08-11 16:14:27 +02:00
vyzo
0091f3a9ce
add competitive selection test
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-08-11 16:14:27 +02:00
vyzo
268d435ce0
add some optimal selection tests
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-08-11 16:14:27 +02:00
Jakub Sztandera
2057433f48
Add needed files
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-08-11 16:14:27 +02:00
Jakub Sztandera
d3c8f295c2
Use real blockProbabilities function
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-08-11 16:14:27 +02:00
vyzo
080614098d
fix edge case of effective performance for chains that dont fit in any partition
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-08-11 16:14:27 +02:00
vyzo
8eff3a25f9
use BlockGasLimit instead of residual for partitioning
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-08-11 16:14:26 +02:00
vyzo
ca803d99fe
nearly optimal message selection for a given ticket quality
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-08-11 16:14:20 +02:00
Raúl Kripalani
200b0f72cc mpool/repub: only record in journal if actually repubbing. 2020-08-11 15:06:13 +01:00
Raúl Kripalani
8f19fff1ec fix tests. 2020-08-11 14:47:02 +01:00
nikkolasg
37fe0dbed2
correct return argument 2020-08-11 13:00:23 +01:00
nikkolasg
7a7cce2538
use cache from drand 2020-08-11 12:58:27 +01:00
Raúl Kripalani
bca516b028 Merge remote-tracking branch 'origin/next' into inmem-journal 2020-08-11 12:42:39 +01:00
Raúl Kripalani
92598237c3 Merge branch 'next' into inmem-journal 2020-08-11 12:41:11 +01:00
whyrusleeping
347ed154b8 more informative chain list 2020-08-10 16:22:02 -07:00
Aayush Rajasekaran
532c32a741 Add new BlockMsgsForTipset() 2020-08-10 15:55:44 -04:00
Aayush Rajasekaran
c72f853e09 Add a test around duplicate nonces 2020-08-10 14:28:02 -04:00
Łukasz Magiera
bc381fc053 stmgr: Allow changing gas values in WaitMsg 2020-08-10 14:55:52 +02:00
Łukasz Magiera
0d1174cb81
Merge pull request #2924 from filecoin-project/feat/mpool-cfg-overesitm
Add GasLimitOverestimation to mpool config
2020-08-10 11:33:05 +02:00
Jakub Sztandera
3710f33e14
Don't reject messages that don't pass RBF, ignore them
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-08-09 03:17:40 +02:00
Jakub Sztandera
5ea9df1824
Use 25% overesitm
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-08-09 02:22:37 +02:00
Jakub Sztandera
a826877ee3
Reduce overesitm to 10%, remove pledgeSectors test rate limit
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-08-09 00:37:24 +02:00
Jakub Sztandera
ea92f5f1ff
Handle error
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-08-09 00:30:00 +02:00
Jakub Sztandera
46fd9d5e80
Quiet down pending messages, fix GasLimit estimation, reduce fee cap
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-08-09 00:29:59 +02:00
Jakub Sztandera
ed2778f785
Make MpoolPushMessage message wait for the first message to be done
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-08-09 00:29:59 +02:00
vyzo
bcb33d75d0
Merge pull request #2918 from filecoin-project/feat/mpool-tests
Some more mpool tests
2020-08-08 22:03:07 +03:00
Jakub Sztandera
5f157affdd
Add GasLimitOverestimation to mpool config
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-08-08 17:09:47 +02:00
vyzo
9bc5d9489d also log chain creation timings 2020-08-08 17:07:37 +03:00
vyzo
b469277046 use structured logging for timings 2020-08-08 16:59:08 +03:00
vyzo
809e7d5390 add timings to various components of message selection 2020-08-08 16:51:30 +03:00
vyzo
4cdb5f7b81 add unit test for priority message selection 2020-08-08 11:22:47 +03:00
vyzo
2d9f2c7e72 add unit test for message skipping in chain creation 2020-08-08 11:16:50 +03:00
Łukasz Magiera
e65db33d77
Merge pull request #2909 from filecoin-project/fix/mpool-bug
fix mpool bugs
2020-08-08 01:32:28 +02:00
vyzo
4c8c8f48f1 skip messages with nonce before the current nonce in chain creation 2020-08-08 02:16:56 +03:00
vyzo
01b8a6de94 remove bug line 2020-08-08 01:45:34 +03:00
Łukasz Magiera
af15273f71 gas: Corruntly do float math 2020-08-08 00:41:57 +02:00
Jakub Sztandera
bf774fc29b
Simplify sync logic around tipset expansions, ff and forking
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-08-07 23:02:13 +02:00
Whyrusleeping
383e28e6e7
Merge pull request #2902 from filecoin-project/asr/error-fix
Fix error message
2020-08-07 13:38:07 -07:00
whyrusleeping
fbe206f843 add command to view circulating supply 2020-08-07 12:57:03 -07:00
Aayush Rajasekaran
88f677e891 Fix error message 2020-08-07 14:36:24 -04:00
vyzo
7e16e3e220 satisfy linter 2020-08-07 20:20:22 +03:00
vyzo
f6e8f02fd2 add persistence for mpool config 2020-08-07 20:10:09 +03:00
vyzo
1b56b88132 add cooldown to message pruning 2020-08-07 19:51:49 +03:00
vyzo
c735d0da0e fix test compilation issue 2020-08-07 19:51:49 +03:00
vyzo
b40346e1ea never prune priority actor messages 2020-08-07 19:51:49 +03:00
vyzo
56c2894c80 add priority actor message selection 2020-08-07 19:51:49 +03:00
vyzo
42e1338ffe mpool config 2020-08-07 19:51:49 +03:00
Łukasz Magiera
e0b86782e9
Merge pull request #2895 from filecoin-project/feat/fix-tests
Fix
2020-08-07 18:37:40 +02:00
Łukasz Magiera
3fe8b1e732 Better slashfilter logging 2020-08-07 16:08:01 +02:00
Łukasz Magiera
cad59b045b More pond-related fixes 2020-08-07 16:07:48 +02:00
Anton Evangelatov
9fa42680fe rationalise annoying logs. 2020-08-07 15:53:55 +02:00
Łukasz Magiera
051be61452 gofmt 2020-08-07 15:04:10 +02:00
Łukasz Magiera
b216785071 sync: Revert #2858 2020-08-07 14:46:46 +02:00
Łukasz Magiera
60545e6722 mempool: Allow 0 gasPerf chains 2020-08-07 14:43:32 +02:00
Łukasz Magiera
5a50d293b9
Merge pull request #2891 from filecoin-project/feat/mpool-negative-chain-pruning
some small improvements in the handling of non-performing chains
2020-08-07 10:14:09 +02:00
vyzo
b31b322e77 also check for 0 in early gasPerf check 2020-08-07 10:55:43 +03:00
vyzo
26f025bc96 some small improvements in the handling of non-performing chains
1. We break the message accumulation the first time we see a chain with gasPerf <= 0
   as it is not profitable to include them in the block
2. When trimming, we remove also trim negative performing messages to make the trimmed
   chain profitable.
2020-08-07 10:33:00 +03:00
vyzo
e977649f29 add regression test for selection trimming 2020-08-07 10:10:54 +03:00
Łukasz Magiera
0612c2eab9 Merge remote-tracking branch 'origin/next' into feat/dyn-base-fee 2020-08-07 04:15:42 +02:00
Jakub Sztandera
884d03f7f1
address feedback
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-08-07 04:09:01 +02:00
Jakub Sztandera
467172f437
Accually add tests
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-08-07 04:01:58 +02:00
Jakub Sztandera
122ec8c9be
Add CalculateBaseFee tests
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-08-07 03:34:50 +02:00
Jakub Sztandera
05c527b681
Hold tipset lock while selecting messages
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-08-07 02:48:53 +02:00
Jakub Sztandera
aa17d2bdf3
Add tests
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-08-07 01:57:21 +02:00
Aayush Rajasekaran
754d6cfea3 Update chain-val 2020-08-06 19:47:23 -04:00
Jakub Sztandera
f55ed9ea09
Update serialization vectors
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-08-07 01:21:01 +02:00
Łukasz Magiera
402b4b6c70 mpool: Fix SelectMessages hanging 2020-08-07 01:01:45 +02:00
Jakub Sztandera
f45970a0d5
Fix FeeCap estimation
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-08-07 00:54:58 +02:00
Jakub Sztandera
2b2b632cd6
Make mpool select only profitable messages
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-08-07 00:40:25 +02:00
Łukasz Magiera
07bf155295 Merge remote-tracking branch 'origin/next' into feat/dyn-base-fee 2020-08-06 23:41:54 +02:00
Jakub Sztandera
cb47f877a5
Add todo
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-08-06 23:35:38 +02:00
Łukasz Magiera
5ef7328fe3 Rerun cbor-gen 2020-08-06 23:27:23 +02:00
Jakub Sztandera
5f826a2147
Update gas numbers
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-08-06 23:27:09 +02:00
Jakub Sztandera
94a38cd97d
Fix mpool test
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-08-06 23:14:09 +02:00
Jakub Sztandera
ab08858b45
Delete GasPrice from this world
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-08-06 23:08:42 +02:00
Whyrusleeping
2212c10f3a
Merge pull request #2858 from filecoin-project/asr/sync-fix
Fix collectHeaders when incoming is partially built on latest tipset
2020-08-06 13:46:44 -07:00
Jakub Sztandera
4004c657b9
Fix chain types tests
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-08-06 22:23:54 +02:00
Jakub Sztandera
c29dd72174
add check for feecap and premium to vm.checkMessage
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-08-06 21:45:03 +02:00
Jakub Sztandera
d6765847df
Fix some messagepool tests
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-08-06 21:25:30 +02:00
Jakub Sztandera
6562b7a4bc
Fix some tests
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-08-06 21:14:55 +02:00
Jakub Sztandera
b384ac6943
Compute correct base burns, miner tip and so on
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-08-06 21:14:38 +02:00
Jakub Sztandera
722d6e8ffb
Introduce base fee
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-08-06 21:14:38 +02:00
Jakub Sztandera
a625943fc3
Fix Weight issue
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-08-06 21:14:38 +02:00
Łukasz Magiera
e54a87f91b
Merge pull request #2838 from filecoin-project/feat/message-pool-selection
New message pool selection logic
2020-08-06 20:19:35 +02:00
vyzo
2166e9a0ff account for message Value in balance calculation 2020-08-06 20:54:27 +03:00
Łukasz Magiera
e2d5451ffb
Merge pull request #2715 from filecoin-project/schomatis/blocksync/review
Rewrite internal logic of block sync client
2020-08-06 19:46:58 +02:00
vyzo
e87d8f9543 add basic selection tests 2020-08-06 20:15:15 +03:00
Dirk McCormick
aea1b0e293 fix: lint fixes 2020-08-06 12:04:10 -04:00
Dirk McCormick
4abc7416f6 fix: make DeleteActor(beneficiary) transfer funds to beneficiary (instead of burning funds) 2020-08-06 12:04:10 -04:00
Lucas Molas
7216363d2e log success fixme 2020-08-06 12:40:01 -03:00
Lucas Molas
2c43138043 record global time in client 2020-08-06 12:38:31 -03:00
vyzo
1e80e3ae65 create maximal chains
Merge chains when gasPerf is non-descreasing (instead of increasing) to create maximal chains.
This also obviates the need for stable sort, as the chains are guaranteed to be in decreasing
order for the same actor.
2020-08-06 18:37:28 +03:00
Łukasz Magiera
c6acfa624e
Merge pull request #2834 from filecoin-project/feat/fund-manager-fix
Improve Fund Manager
2020-08-06 16:45:05 +02:00
vyzo
7a8c74fee8 use stable sort for chain sorting
the default non-stable sort may reorder chains with the same gasPerf, which might change the order
of messages per nonce; facepalm.
2020-08-06 17:40:22 +03:00
vyzo
16a1f9b682 message chain creation tests 2020-08-06 17:08:02 +03:00
vyzo
61d027db2a use supplied tipset when looking up actor state 2020-08-06 17:07:37 +03:00
vyzo
30ec4e7524 import cosmetics 2020-08-06 11:17:11 +03:00
Aayush Rajasekaran
6e8d51af02 Fix collectHeaders when incoming is partially built on latest tipset 2020-08-06 02:24:29 -04:00
hannahhoward
9babf34a0c fix(fundmgr): switch to id addresses
in order to observe the balance table correctly, convert to tracking funds by id address
2020-08-05 18:33:11 -07: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
Lucas Molas
ac25502308 go fmt 2020-08-05 19:47:27 -03:00
Lucas Molas
8e044be7c2 protocol: req: use TipSetKey comment 2020-08-05 19:45:10 -03:00
Lucas Molas
65512193cc clear deadline in server 2020-08-05 19:40:00 -03:00
Łukasz Magiera
e60af00ec4
Merge pull request #2764 from filecoin-project/feat/burn-above-estimate
Burn sclaing amount dependon on how much overestimation there was
2020-08-05 23:20:42 +02:00
vyzo
a08d780bef enhance SelectMessages method to take a target message 2020-08-05 23:16:09 +03:00
vyzo
5f599dcaf5 remove duplicate time log 2020-08-05 21:48:29 +03:00
vyzo
829c7953d5 fix dereference bug 2020-08-05 18:28:04 +03:00
vyzo
a8b0db91e8 implement pruning using the chain selection logic 2020-08-05 13:28:14 +03:00
vyzo
b4be1472c0 use RequiredFunds in chain inclusion balance sanity check 2020-08-05 13:08:07 +03:00
vyzo
06a13681ae satisfy stupid linter 2020-08-05 10:43:49 +03:00
vyzo
50e1650344 fix Trim bug 2020-08-05 10:31:42 +03:00
vyzo
23003c4d55 fix Before bug 2020-08-05 10:28:12 +03:00
vyzo
9b6d822b3e avoid repeatedly reallocating a big for block gas limit, more conservative failed gas estimation 2020-08-05 10:22:40 +03:00
vyzo
9f7deff512 better handling of gas guess errors
don't swallow them, the failed gas guess is too high.
2020-08-05 10:19:32 +03:00
vyzo
6e1bfaffd7 make it compile! 2020-08-05 09:46:48 +03:00
hannahhoward
b2a114a808 test(fundmgr): add FundMgr test 2020-08-04 18:16:25 -07:00
hannahhoward
b4d1b628be feat(fundmgr): add monitoring to FundMgr 2020-08-04 17:29:52 -07:00
hannahhoward
f4720ddb2c feat(state): add predicate for deal id watching 2020-08-04 17:28:05 -07:00
Jakub Sztandera
d9ba8d3671
Change to scaling overestimation burn algorithm
Change the treshold to 1.1

Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-08-05 02:12:11 +02:00
Jakub Sztandera
3058f280d9
Fix bad error message
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-08-05 02:10:25 +02:00
Aayush Rajasekaran
9eea11662c
Update chain-val to support burn gaslimit changes
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-08-05 02:10:25 +02:00
Jakub Sztandera
5405a5adc3
Sepearate ComputeGasOutputs into sepearate function, add tests
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-08-05 02:10:25 +02:00
Jakub Sztandera
5ff12a5d2d
Burn remainder of GasLimit over 1.3*gasUsed
GasToBurn = max(0, GasLimit - GasUsed + (3*GasUsed)/10)

Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-08-05 02:10:25 +02:00
vyzo
b4ff9ba220 better minGas sanity check 2020-08-04 23:18:51 +03:00
vyzo
89d42b5958 message chain construction 2020-08-04 23:18:51 +03:00
vyzo
e323fa7a8c message chain trimming 2020-08-04 23:18:51 +03:00
vyzo
c7eec94d95 message selection preliminaries 2020-08-04 23:18:51 +03:00
Lucas Molas
7982ab52a7 check connection between fetched segments during sync 2020-08-04 15:06:30 -03:00
Lucas Molas
1ec0ded953 document NewTipSet checks 2020-08-04 14:44:48 -03:00
Lucas Molas
9f82e98f28 check parent height 2020-08-04 14:44:27 -03:00
Jakub Sztandera
a58edeb96f
Tighten up timestamp check
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-08-03 18:39:27 +02:00
Lucas Molas
c0c692fa22 fix cbor-gen 2020-08-03 12:23:11 -03:00
Lucas Molas
fc32410e5b review server 2020-08-03 12:20:05 -03:00
Lucas Molas
755772e12d review client comments 2020-08-03 12:20:05 -03:00
Lucas Molas
97b37474f9 extra check in toFullTipSets 2020-08-03 12:20:05 -03:00
Lucas Molas
3f6c418dc6 rename validatedResponse to private 2020-08-03 12:20:05 -03:00
Lucas Molas
0e4d5cb67b document CompactedMessages 2020-08-03 12:20:05 -03:00
Lucas Molas
ccaca48140 temporarily make MaxRequestLength a var 2020-08-03 12:20:05 -03:00
Lucas Molas
0d77c96bda extend maximum to fork length 2020-08-03 12:20:05 -03:00
Lucas Molas
76d40ec408 first pass, ready for review 2020-08-03 12:20:04 -03:00
Whyrusleeping
43491cb7ed
Merge pull request #2768 from filecoin-project/fix/add-explanation
Fix/add explanation
2020-08-01 16:59:20 -07:00
lanzafame
f2d1fbdfa5 Add explanation to channel magic 2020-08-02 09:57:34 +10:00
whyrusleeping
9c51b48754 update some numbers 2020-08-01 16:56:38 -07:00
Whyrusleeping
113fcac476
Update chain/messagepool/pruning.go
Co-authored-by: Łukasz Magiera <magik6k@users.noreply.github.com>
2020-08-01 16:39:16 -07:00
Whyrusleeping
31296e6cdc
Update chain/messagepool/pruning.go
Co-authored-by: Łukasz Magiera <magik6k@users.noreply.github.com>
2020-08-01 16:39:02 -07:00
whyrusleeping
8260184abc more debug message cleanup 2020-08-01 16:35:02 -07:00
whyrusleeping
f71957bcec aayush is too picky 2020-08-01 16:31:56 -07:00
whyrusleeping
78564e8c54 fix mr test 2020-08-01 16:29:26 -07:00
whyrusleeping
2e04dc908c clean up after review 2020-08-01 16:25:13 -07:00
whyrusleeping
255777a4a9 implement dumb pruning 2020-08-01 15:54:21 -07:00
whyrusleeping
f2a3d23798 implement first pruning method, pruning of 'future' messages 2020-08-01 14:57:35 -07:00
whyrusleeping
fe80f4b830 WIP: message pool pruning 2020-08-01 14:57:34 -07:00
Łukasz Magiera
f9863f31fd
Merge pull request #2751 from filecoin-project/misc/windo-cheaper
Make VerifyPost cheaper
2020-07-31 21:44:35 +02:00
Jakub Sztandera
ae29d132ed
Make VerifyPost cheaper
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-07-31 21:38:23 +02:00
whyrusleeping
b83629c4d5 update to latest cbor-gen 2020-07-31 11:19:30 -07:00
Łukasz Magiera
4cb4e7c2c2 Merge remote-tracking branch 'origin/master' into next 2020-07-31 14:02:04 +02:00
Łukasz Magiera
6458354265
Merge pull request #2718 from filecoin-project/schomatis/make-gen
make gen
2020-07-31 13:54:09 +02:00
Whyrusleeping
d52ad2ea77
Merge pull request #2689 from filecoin-project/asr/deal-collateral
Update specs-actors, support deal provider collateral bounds
2020-07-30 21:58:16 -07:00
Aayush Rajasekaran
c881f287ad Update specs-actors and chain-val...again 2020-07-31 00:29:44 -04:00
Lucas Molas
595de3fccb fix: block validator: check against heaviest tipset 2020-07-30 18:05:28 -03:00
Lucas Molas
f1f9ce5351 make gen 2020-07-30 17:25:18 -03:00
vyzo
dd06e768d3 temporarily disabled broken test 2020-07-30 21:47:12 +03:00
Łukasz Magiera
9ef69c91e4 Merge remote-tracking branch 'origin/next' into asr/deal-collateral 2020-07-30 17:19:33 +02:00
Jakub Sztandera
7f722623ca
Allow messages with not enough funds for transfer to apply
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-07-30 16:23:30 +02:00
Łukasz Magiera
627d7b5269 Merge remote-tracking branch 'origin/next' into asr/deal-collateral 2020-07-30 14:36:22 +02:00
Łukasz Magiera
4d328cad54 Get things to mostly work 2020-07-30 14:31:50 +02:00
Aayush Rajasekaran
74dd01a8db Fundmanager shouldn't try to add zero 2020-07-29 20:27:22 -04:00
Jakub Sztandera
4a92422f8b
Prevent Pushing messages not valid for block inclusion
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-07-29 19:15:24 +02:00
Jakub Sztandera
5eb74ba3f7
Revert "Prevent Pushing messages not valid for block inclusion" 2020-07-29 19:06:32 +02:00
Jakub Sztandera
c17c653eb1
Prevent Pushing messages not valid for block inclusion
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-07-29 18:34:10 +02:00
Aayush Rajasekaran
5e485a085a
Merge pull request #2637 from filecoin-project/gas/tag-verify-post
Use scaling VerifyPost cost
2020-07-28 21:22:23 -04:00
Aayush Rajasekaran
b51e2a868b
Merge branch 'next' into feat/cid-builder 2020-07-28 21:02:30 -04:00
Aayush Rajasekaran
a4fe359c28
Merge pull request #2605 from filecoin-project/asr/vesting-genesis
Correct calculation of TotalCircSupply
2020-07-28 20:43:55 -04:00
Aayush Rajasekaran
890f56ac38 Lock before setting up genesis msigs 2020-07-28 20:35:40 -04:00
Whyrusleeping
b60f2deedb
Merge pull request #2641 from filecoin-project/feat/repub-less
only republish the next few messages from your mempool
2020-07-28 16:53:29 -07:00
whyrusleeping
7b29a1ae73 only republish the next few messages from your mempool 2020-07-28 16:31:05 -07:00
Aayush Rajasekaran
0b1d80d3e3 Rename constants to match CE spec 2020-07-28 17:26:55 -04:00
Aayush Rajasekaran
7153bda0be Correct MiningRewardTotal and calculation of filMined 2020-07-28 17:26:55 -04:00
Aayush Rajasekaran
de867d7a9a Correct calculation of TotalCircSupply 2020-07-28 17:26:55 -04:00
Aayush Rajasekaran
859168015a Use specs actor's MinerNominalPowerMeetsConsensusMinimum 2020-07-28 17:21:05 -04:00
Jakub Sztandera
0d169dd947
Use scaling VerifyPost costs
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-07-28 22:31:43 +02:00
Jakub Sztandera
5d9c6cd02c
Add proof info to gas trace
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-07-28 22:31:43 +02:00
Łukasz Magiera
ed04c80bb1 Fix precommit deposit 2020-07-28 20:55:31 +02:00
Łukasz Magiera
927ee2406a Downgrade actors, get tests to pass 2020-07-28 19:51:58 +02:00
Łukasz Magiera
fb59b40507 Fix some tests 2020-07-28 18:16:56 +02:00
Łukasz Magiera
1fd23248ff gofmt 2020-07-28 16:38:26 +02:00
Łukasz Magiera
473a1f91d5 Update specs-actors to 33f4d6e 2020-07-28 16:36:32 +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
8c95821e9c Merge branch 'keyko-io-feat/genesis-rootkey' into next 2020-07-28 15:40:44 +02:00
Łukasz Magiera
09eb3731f2 Fix duplicate vm setup in genesis 2020-07-28 15:38:13 +02:00
Łukasz Magiera
b7139c38ed
Merge pull request #2617 from filecoin-project/feat/cron-on-nulls
stmgr: Execute cron tick on null rounds
2020-07-28 15:36:40 +02:00
Łukasz Magiera
ddbdcaa3d3
Merge pull request #2567 from filecoin-project/feat/block-validation-histogram
Change block validation aggregation type from sum to distribution
2020-07-28 15:26:44 +02:00
Łukasz Magiera
ca36519325 stmgr: Bigger number for cron gas limit 2020-07-28 14:32:30 +02:00
Łukasz Magiera
eac0a1bba9 stmgr: Handle state forks with cron on null blocks correctly 2020-07-28 14:31:28 +02:00
Jose Pablo Fernandez
834ce171d3
Merge branch 'next' into feat/genesis-rootkey 2020-07-28 11:53:00 +02:00
Łukasz Magiera
8889c5cfd3 stmgr: Dedupe cron invocation 2020-07-28 02:28:22 +02:00
Łukasz Magiera
5b6006f8fe stmgr: Execute cron tick on null rounds 2020-07-28 02:25:16 +02:00
Simon Peffers
78739d9417 Fixes for failed CI tests 2020-07-26 00:46:23 -04:00
Simon Peffers
0f3105a01f Integrate blst signature library: https://github.com/supranational/blst 2020-07-25 21:38:18 -04:00
Sami Mäkelä
15481e63dd merge 2020-07-24 12:34:48 +03:00
Sami Mäkelä
d90fac6e09 tests are working now 2020-07-24 12:22:50 +03:00
Steven Allen
bb54dc97b6 Fix incorrect ID CID optimization
Blocks inlined into CIDs can technically contain CIDs themselves. I'm guessing
this check was trying to skip "actor" CIDs (inline cids with raw blocks).
2020-07-23 23:22:44 -07: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
lanzafame
9207315b25 Change block validation aggregation type from sum to distribution 2020-07-24 15:47:41 +10: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
Łukasz Magiera
6aabd18479 More spect-actors updates 2020-07-23 23:03:25 +02:00
Jakub Sztandera
4abff16783
Update storage gas prices
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-07-23 22:56:32 +02:00
Aayush Rajasekaran
e8837688a2 update specs actors 2020-07-23 16:44:09 -04:00
Łukasz Magiera
af50e69293
Merge pull request #2552 from filecoin-project/fix/rbf-error-msg
Improve RBF error message
2020-07-23 21:21:06 +02:00
Jakub Sztandera
fc2c737e05
Improve RBF error message
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-07-23 20:44:55 +02:00
Łukasz Magiera
637ec168df
Merge pull request #2550 from filecoin-project/fix/runtime-logs
fix: correctly pass variadic args from runtime log
2020-07-23 20:42:52 +02:00
Łukasz Magiera
e5977658f4
Merge pull request #2539 from Stebalien/feat/use-adt
Refactor to use actor adt types instead of directly using HAMTs and AMTs
2020-07-23 20:42:32 +02:00
frrist
bd2363178d fix: correctly pass variadic args from runtime log 2020-07-23 10:13:16 -07:00
Jakub Sztandera
ff5ff4d294
Add multiple drand configs
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-07-23 18:45:08 +02: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
Frank
c38b8b1265 close file 2020-07-23 18:21:13 +08:00
Hannah Howard
7b00bb1ffe
Merge pull request #2448 from filecoin-project/feat/payment-channel-settler
Submit vouchers automatically when payment channels settle
2020-07-22 18:03:48 -07:00
Lucas Molas
596f379690 run VerifyWinningPoStProof test on client node 2020-07-22 19:27:06 -03:00
Łukasz Magiera
d8c3cf11f6
Merge pull request #2529 from filecoin-project/fix/dont-ignore-sync-errors
properly return sync errors
2020-07-22 23:34:04 +02:00
whyrusleeping
e36fb5e622 ensure blocks with invalid winning post are not accepted 2020-07-22 14:04:20 -07:00
Dirk McCormick
462562a921 fix: stmgr forks test 2020-07-22 16:27:50 -04:00
Jakub Sztandera
8fb3f7e40e
Fix bls verification when there are no messages
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-07-22 21:59:05 +02:00
whyrusleeping
78e7e59381 Add test to check that bad winning post blocks are rejected 2020-07-22 12:12:41 -07:00
whyrusleeping
75b9fdc0a0 return multierror after creation 2020-07-22 11:53:56 -07:00
Łukasz Magiera
d70edbcb7c Set things on syscallShim 2020-07-22 13:35:10 -04:00
hannahhoward
8141fecaa9 feat(paych): add simple integration test 2020-07-22 13:35:10 -04:00
Jakub Sztandera
629e03f303
Apply sequence of messages
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-07-22 18:16:07 +02:00
Jakub Sztandera
7d83349507
Format FIL as FIL
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-07-22 17:50:34 +02:00
Jakub Sztandera
b3bac0c9e8
Add better error messages for message pre-execution errors
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-07-22 17:50:34 +02: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
Raúl Kripalani
b8475114ba Merge branch 'next' into inmem-journal 2020-07-21 17:42:51 +01:00
Raúl Kripalani
443473f833 fix tests. 2020-07-21 17:37:06 +01:00
Raúl Kripalani
4e82cf369c rename journal entries to journal events. 2020-07-21 17:32:01 +01:00
Raúl Kripalani
3bd9d55a15 message pool: write message(s) in journal entries. 2020-07-21 13:10:29 +01:00
Jakub Sztandera
6673a80db5
Fix nonce setting in gas estimation
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-07-21 03:41:18 +02:00
whyrusleeping
42a7cb1248 fix a few multisig cli issues 2020-07-20 17:17:53 -07:00
Łukasz Magiera
66c44d24ff
Merge pull request #2484 from filecoin-project/feat/gas-estim
Add gas estimation
2020-07-21 01:09:16 +02:00
Jakub Sztandera
a5334eb2b3
Fix lint warnings
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-07-20 21:41:05 +02:00
Jakub Sztandera
7da629d03b
Update gas prices
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-07-20 21:31:05 +02:00
Jakub Sztandera
310fa67f9d
Add gas estimation
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-07-20 19:48:30 +02: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
Raúl Kripalani
7459ec6bba add mpool journal events; fix dependency injection. 2020-07-20 16:37:32 +01:00
Sami Mäkelä
287bfd9fb2 merge 2020-07-20 18:36:06 +03:00
Sami Mäkelä
3cc3c9a34e generate an account 2020-07-20 18:03:27 +03:00
Raúl Kripalani
226786c1da wip 2020-07-20 14:45:17 +01:00
Jakub Sztandera
e1c9c4297b
use cid for cmp
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-07-20 15:29:07 +02:00
Łukasz Magiera
740499a726
Merge pull request #2479 from filecoin-project/fix/actor-unsafe-cids
Update specs-actor with unsafa param fixes
2020-07-20 14:52:26 +02:00
Łukasz Magiera
e6f3444eb2 mod tidy, gofmt 2020-07-20 14:31:39 +02:00
Łukasz Magiera
5301aa4db2 Update specs-actor with unsafa param fixes 2020-07-20 14:31:18 +02:00
Raúl Kripalani
4d2d8b2d11 Merge branch 'next' into inmem-journal 2020-07-20 10:38:58 +01:00
Sami Mäkelä
a62edd05de adding rootkey to genesis 2020-07-20 11:28:45 +03:00
Travis Person
28f7874942 genesis: set deals to end on sector expiry
Setting the deal to end on the sector expiry ensures we get the full
quality adjustment of power for the full sector.

Resolves #2404
2020-07-19 22:38:59 +00:00
Łukasz Magiera
1a1bd38495 Merge remote-tracking branch 'origin/master' into next 2020-07-18 00:43:08 +02:00
Łukasz Magiera
e02b40f04f
Merge pull request #2460 from filecoin-project/feat/specs-actors-v0.8ish
Feat/specs actors v0.8ish
2020-07-18 00:36:13 +02:00
Łukasz Magiera
a06e685cfc
Merge pull request #2450 from filecoin-project/feat/seed-msig-work
Feat/seed msig work
2020-07-18 00:21:45 +02:00
Łukasz Magiera
0ded061037 Get math to work 2020-07-18 00:15:21 +02:00
whyrusleeping
665b873c96 more permissive parsing, also don't set useless actor addr 2020-07-17 14:27:56 -07:00
Łukasz Magiera
956f4d5e14 update specs-actors more 2020-07-17 22:58:04 +02:00
frrist
7ff468ce85 feat: track miner precommit
- add materalized view showing all miner sector info
2020-07-17 12:25:54 -07:00
Jakub Sztandera
1b5797be9d
Merge pull request #2456 from filecoin-project/feat/increase-cron-gas
Increase cron gas
2020-07-17 20:11:21 +02:00
Raúl Kripalani
becbff0b13 add NilJournal; fix call sites to ChainStore constructor. 2020-07-17 19:10:47 +01:00
Jakub Sztandera
b6f3513173
Increase gas limit for CallRaw
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-07-17 19:54:39 +02:00
Raúl Kripalani
4bcf01938c use new journal from chain/store pkg. 2020-07-17 18:54:26 +01:00
Jakub Sztandera
aafafce083
Increase cron gas
Make gas check overflow safe
2020-07-17 19:49:55 +02:00
Łukasz Magiera
bbc2657023 Fix StateMinerProvingSet 2020-07-17 16:21:00 +02:00
Raúl Kripalani
695f6cfe45 wip in-memory journal. 2020-07-17 14:34:42 +01:00
Łukasz Magiera
cb6767a02b Merge remote-tracking branch 'origin/next' into feat/actors-miner-refactor 2020-07-17 15:18:11 +02:00
Peter Rabbitson
e266f3b955 Bump fil-commcid and filecoin-ffi deps
Propagates correct on-chain commX CIDs
2020-07-17 00:38:42 +02:00
Sami Mäkelä
ab5b69c5e4 add it to map 2020-07-16 15:30:59 -07:00
Sami Mäkelä
21b78514f5 working 2020-07-16 15:30:59 -07:00
Łukasz Magiera
5a3ab5c5f0 More actor updates 2020-07-16 14:48:20 +02:00
Jakub Sztandera
02631155dc
Add block gas limit verification
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-07-16 01:00:03 +02:00
Jakub Sztandera
610ed0dc13
Change OnIpldGet
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-07-15 21:40:49 +02:00
Jakub Sztandera
7b14d445b4
Update message gas limits
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-07-15 20:01:57 +02:00
Jakub Sztandera
4dd6f6400c
Make virtual gas real
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-07-15 20:01:57 +02:00
Jakub Sztandera
c0eb4b39ac
Reorg some gas charges
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-07-15 20:01:56 +02:00
Łukasz Magiera
c1233291bc Merge remote-tracking branch 'origin/master' into next 2020-07-15 19:47:27 +02:00
Łukasz Magiera
0f2043d874
Merge pull request #2317 from filcloud/issue-2304
fix issue 2304: ux improvements
2020-07-15 19:38:35 +02:00
Łukasz Magiera
6b9fd74f8e
Merge pull request #2419 from filecoin-project/schomatis/fix/newtipset/mismatch-lengths
fix: NewTipSet: check mismatch in number of parents
2020-07-15 17:49:39 +02:00
Raúl Kripalani
a44e80c829 Merge branch 'next' into mock-clock 2020-07-15 15:51:11 +01:00
Lucas Molas
21ffe188f4 fix: NewTipSet: check mismatch in number of parents 2020-07-15 08:17:50 -03:00
Lucas Molas
0313ab4e49 debug: standard PoSt tag 2020-07-14 19:22:25 -03:00
Łukasz Magiera
bbfa66636d More test fixing 2020-07-14 22:30:25 +02:00
Łukasz Magiera
af87b9aa98 Fix widowed PoSt scheduler 2020-07-14 19:10:31 +02:00
Raúl Kripalani
0484496d92 Merge branch 'next' into mock-clock 2020-07-14 18:08:26 +01:00
Raúl Kripalani
fbf6596f20 revert to real time for socket/stream deadlines. 2020-07-14 17:42:52 +01:00
Łukasz Magiera
faebc4c948 WIP Integrating specs-actors with refactored miner state 2020-07-14 13:45:45 +02:00
Łukasz Magiera
a778917806 gofmt 2020-07-13 13:35:10 +02:00
Łukasz Magiera
2e4ed57363 Merge remote-tracking branch 'origin/master' into next 2020-07-13 13:34:56 +02:00
Raúl Kripalani
973dbd6a13 Merge branch 'next' into mock-clock 2020-07-13 11:29:53 +01:00
Łukasz Magiera
c1048a0353 vm: Separate logger for actors 2020-07-13 12:29:27 +02:00
Aayush Rajasekaran
7e9f9106c9 Update specs actors 2020-07-12 00:30:42 -04:00
Aayush Rajasekaran
69626272d5 Update with reward state changes 2020-07-12 00:30:42 -04:00
Aayush Rajasekaran
eed44d12ba Add log method to Runtime 2020-07-12 00:30:42 -04:00
Aayush Rajasekaran
2a61b241a8 Replace abi.BitFieldUnion with bitfield.MultiMerge 2020-07-12 00:30:42 -04:00
Frank
14ec9a2068 update storage miner and seal worker document 2020-07-11 16:55:13 +08:00
austinabell
2fd860324f
avoid generating cids on all messages before checking message length 2020-07-10 19:59:58 -04:00
Łukasz Magiera
39d609a661
Merge pull request #2169 from waynewyang/evnet
set called 'true' after handle be called
2020-07-10 22:28:00 +02:00
Łukasz Magiera
89a6b6842c Merge remote-tracking branch 'origin/master' into next 2020-07-10 22:24:41 +02:00
Łukasz Magiera
5530a7bef2
Merge pull request #2322 from filecoin-project/frrist/deal-state-changes
Frrist/deal state changes
2020-07-10 21:57:42 +02:00
Łukasz Magiera
8ce35e30dd Merge remote-tracking branch 'origin/master' into next 2020-07-10 21:50:38 +02:00
Łukasz Magiera
bc23b0ed4f
Merge pull request #2278 from filecoin-project/fix/rename-vars
rename sync variables.
2020-07-10 21:36:04 +02:00
Łukasz Magiera
dc9df10f5a sync: Also rename span attributes 2020-07-10 21:31:58 +02:00
Raúl Kripalani
13de81b3b2 introduce the ability to mock time. 2020-07-10 15:51:45 +01:00
Łukasz Magiera
e81f182840
Merge pull request #2330 from filecoin-project/feat/fil-units
produce and parse FIL suffix on FIL strings
2020-07-10 09:41:01 +02:00
whyrusleeping
a3602d4fcf fix tests, handle parsing with suffixes properly 2020-07-09 17:26:06 -07:00
frrist
bf6b76a4fb feat: add market deal state & proposal predicates
- detects changes in the market deal proposal and market deal state
amts.
2020-07-09 14:43:21 -07:00
whyrusleeping
a79b31c230 produce and parse FIL suffix on FIL strings 2020-07-08 16:16:45 -07:00
Łukasz Magiera
8fbeebb86d rename sync variables. 2020-07-08 22:02:28 +02:00
Łukasz Magiera
2c00b92325 Merge remote-tracking branch 'origin/master' into next 2020-07-08 21:47:05 +02:00
frrist
d78b7e57c7 polish: include key in AdtArrayDiff interface
- some values do not contain their keys
2020-07-08 11:19:14 -07:00
frrist
509e3b653c polish: genericize adt array diff & extract store
- adds testing for adt diff
2020-07-08 11:19:14 -07:00
Aayush Rajasekaran
56a892e5f9
Merge pull request #2246 from TroyWind/fit-multiple-piece-into-a-sector
a sector contains multiple deals(pieces), the state of deals incorrect
2020-07-08 11:21:41 -04:00
Łukasz Magiera
d16de56280 gofmt 2020-07-08 14:35:53 +02:00
Łukasz Magiera
b049c5a7d1 Merge remote-tracking branch 'origin/master' into next 2020-07-08 14:35:40 +02:00
Jakub Sztandera
74db060cdb
Fix bad block rason if ValidateBlock fails
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-07-08 03:55:56 +02:00
Aayush Rajasekaran
ad980b4966 VerifyConsensusFault should return an error if no fault is found 2020-07-07 01:29:16 -04:00
Łukasz Magiera
99b5ec96a2
Merge pull request #2101 from filecoin-project/feat/persistent-journal
implement a persistent journal for lotus node operations
2020-07-07 02:38:04 +02:00
Łukasz Magiera
66e547230d
Merge pull request #2233 from filecoin-project/frrist/miner-sector-predicate
feat: add miner sector predicate and test
2020-07-07 01:43:41 +02:00
frrist
3c6e46cd70 feat: add miner sector predicate and test
-polish: OnActorStateChanged operate over TipSetKey
    - it was calling key() interally and tipsetkeys are cheaper to get than
the full tipset
  -polish: improve predicate method names
2020-07-06 14:27:39 -07:00
Łukasz Magiera
e7aec53631 Merge remote-tracking branch 'origin/master' into next 2020-07-06 23:02:24 +02:00
Jakub Sztandera
49800b8fec
Add original tipset to the string
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-07-06 19:46:25 +02:00
Jakub Sztandera
50c773c6a3
Add better description to bad blocks
Track original cause of blocks being marked as bad.

Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-07-06 19:23:29 +02:00
whyrusleeping
42bd4eccbe implement a persistent journal for lotus node operations 2020-07-06 09:42:00 -07:00
Łukasz Magiera
4b0ae7ef9a Merge remote-tracking branch 'origin/master' into next 2020-07-06 11:38:19 +02:00
whyrusleeping
16e493a67a provide decoded return values in output of StateWaitMsg 2020-07-03 09:57:58 -07:00
Łukasz Magiera
655d6f6720 Merge remote-tracking branch 'origin/master' into next 2020-07-03 17:03:09 +02:00
Łukasz Magiera
d3a1261f1e
Merge pull request #2227 from filecoin-project/asr/api
Add docs comments to API
2020-07-03 15:33:07 +02:00
Jakub Sztandera
9936439608
Merge remote-tracking branch 'origin/master' into next
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-07-03 14:56:06 +02:00
Łukasz Magiera
bb3758f648 seed: Support fake preseals 2020-07-03 03:29:21 +02:00
刘林欣
ff4d9ecc77 fit in cases where a sector contains multiple deals, the state of each deal is correct 2020-07-03 09:20:47 +08:00
Łukasz Magiera
14ae8c7272
Merge pull request #2156 from filecoin-project/fix/bench-analyze
Improve performance of bench import analyze
2020-07-02 19:35:18 +02:00
Jakub Sztandera
567b8082c3
Back to 10 callers
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-07-02 18:47:35 +02:00
Jakub Sztandera
c4158f12f1
Include proof number as extra in OnVerifyPost
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-07-02 18:47:35 +02:00
Jakub Sztandera
11dc902d53
Adjust OnMethodInvocation
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-07-02 18:47:34 +02:00
Jakub Sztandera
9ccd25b072
Update gas values, compute correlation coefficient
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-07-02 18:47:33 +02:00
Jakub Sztandera
c68a8f802e
Adjust gas
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-07-02 18:47:33 +02:00
Jakub Sztandera
bc88c632d1
Fix previous commit
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-07-02 18:47:33 +02:00
Jakub Sztandera
1e17ea3fff
Adjust gas values
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-07-02 18:47:33 +02:00
Jakub Sztandera
cd2595da67
Adjust gas
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-07-02 18:47:32 +02:00
Jakub Sztandera
4db61e71da
Reduce caller depth
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-07-02 18:47:32 +02:00
Jakub Sztandera
a2fd0aad41
More on OnActorExec
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-07-02 18:47:31 +02:00
Jakub Sztandera
01ac4e5da3
Gas on actor exec
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-07-02 18:47:30 +02:00
whyrusleeping
f8a1fb2321 fix vm abortf log message 2020-07-01 15:51:21 -07:00
Aayush Rajasekaran
605e9bbbd7 Add docs comments to API 2020-07-01 17:16:05 -04:00
Łukasz Magiera
4c422c2d50 specs-actors v0.7.1 2020-07-01 13:47:40 +02:00
hannahhoward
92bb5bd915 fix(lint): fix lint errors 2020-07-01 12:06:29 +02:00
Dirk McCormick
a3abff768c fix: dont register state change if deal is not present in from and to states 2020-07-01 12:06:29 +02:00
Dirk McCormick
1fd1c2edbd feat: allow nil deal state change (deal removed) 2020-07-01 12:06:29 +02:00
Łukasz Magiera
4c1dfd7eda sync: Fix build 2020-07-01 11:24:26 +02:00
Łukasz Magiera
cfdbc2312d Merge branch 'master' into next 2020-07-01 11:22:57 +02:00
Łukasz Magiera
e1799f1524
Merge pull request #2155 from filecoin-project/feat/ffi-0.30.1
Update FFI to 0.30.1
2020-07-01 11:17:18 +02:00
Łukasz Magiera
cd34d02377
Merge pull request #2209 from filecoin-project/feat/faster-winpost-sectors
use bitfields to enumerate sectors for winning post
2020-07-01 10:43:24 +02:00
Łukasz Magiera
a362ef97df
Merge pull request #2188 from filecoin-project/const-relaxation
make system constants configurable as vars.
2020-07-01 10:43:07 +02:00
Łukasz Magiera
92f392d422
Merge pull request #2192 from filecoin-project/fix/evnts-map-pnc
Fix concurrent map access panic in event API
2020-07-01 10:36:29 +02:00
whyrusleeping
da78ff9151 use bitfields to enumerate sectors for winning post 2020-06-30 21:57:49 -07:00
Raúl Kripalani
77c7eb6fd9 fix lint errors. 2020-06-30 22:56:13 +01:00
Whyrusleeping
857b5962da
Merge pull request #2000 from filecoin-project/asr/maxheight
Do not connect to peers with impossibly high heads
2020-06-30 14:24:50 -07:00
Dirk McCormick
49dccf4284 fix: concurrent map access panic 2020-06-30 14:24:08 -04:00
Raúl Kripalani
3b826e41f6 rename build.AllowableClockDrift{=>Secs}. 2020-06-30 15:00:01 +01:00
Raúl Kripalani
4f9c907248 rename build.{BlockDelay=>BlockDelaySecs}.
Since this global is not typed as a time.Duration,
rather as an int, it makes sense to clarify the unit.
2020-06-30 14:26:49 +01:00
Raúl Kripalani
0fddf3e114 make system constants configurable as vars.
This configurability is unlocked through the `testground`
build tag, which Project Oni will uses.

Changes in the usage places of these relaxed constants
were required due to the fact that Golang constants are
untyped, but vars aren't.

Read https://blog.golang.org/constants for more info.
2020-06-30 14:18:26 +01:00
Łukasz Magiera
24529bf35d Merge branch 'next' into feat/specs-actors-v0.7.0 2020-06-29 22:45:50 +02:00
Łukasz Magiera
77b3bf8bc2 Update FFI to 0.30.1 2020-06-29 20:24:27 +02:00
Łukasz Magiera
2bab5d1ddd Merge remote-tracking branch 'origin/master' into next 2020-06-29 17:45:58 +02:00
Dirk McCormick
c72def55fe test: add more predicate tests 2020-06-29 11:21:29 -04:00
waynewyang
048d0e0d7a set 'true' after handle be called 2020-06-29 21:37:08 +08:00
Łukasz Magiera
7058f4eb63
Merge pull request #2153 from filecoin-project/feat/state-changes-api
Feat/state changes api
2020-06-29 15:19:18 +02:00
Aayush Rajasekaran
1f57d9462c Don't return nil interfaces from runtime.Send() 2020-06-29 01:13:45 -04:00
Lucas Molas
fbfe57cd63
doc: block validations (#1919)
Co-authored-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-06-26 20:13:14 -03:00
Dirk McCormick
659c723ea3 fix: embed hcEvents into events as pointer so as not to copy lock 2020-06-26 15:42:44 -04:00
Dirk McCormick
bbb9a9cd1a refactor: lint fixes 2020-06-26 15:36:48 -04:00
Dirk McCormick
db1773d708 docs: add predicate docs 2020-06-26 14:59:23 -04:00
Dirk McCormick
a1b009328d refactor: simplify diff 2020-06-26 14:43:46 -04:00
Dirk McCormick
393a9ca4f2 test: predicates test 2020-06-26 14:41:19 -04:00
Aayush Rajasekaran
8e7ac226b0 Include WinCount when awarding block rewards 2020-06-26 14:27:49 -04:00
Łukasz Magiera
edd7151184 Fix StateMinerInitialPledgeCollateral 2020-06-26 15:49:39 +02:00
Łukasz Magiera
b8f1264e71 genesis: Update process comment 2020-06-26 15:23:52 +02:00
Łukasz Magiera
a6d1323eba Update specs-actors to v0.7.0; More correct genesis sector import 2020-06-26 15:08:12 +02:00
Łukasz Magiera
d27ff60ae2 Merge remote-tracking branch 'origin/master' into next 2020-06-26 13:08:37 +02:00
Dirk McCormick
abad4a3941 refactor: modify predicates API 2020-06-25 17:43:37 -04:00
Dirk McCormick
728afc0587 refactor: remove state API example 2020-06-25 12:46:43 -04:00
Dirk McCormick
95a9dc9db0 refactor: use struct instead of array for state change 2020-06-25 12:43:06 -04:00
Dirk McCormick
b62fef7541 feat: include previous TS in StateChangedHandler 2020-06-25 12:43:06 -04:00
Dirk McCormick
dd490220d7 refactor: Extract message-specific code from calledEvents
This allows us to create a general purpose head change events manager that can be used for call events and also for state change events.
2020-06-25 12:43:06 -04:00
hannahhoward
7f932b96ae WIP 2020-06-25 12:41:50 -04:00
Jakub Sztandera
10c4fae8c0
Make gas traces smaller, strip callers in import-bench
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-06-25 16:46:50 +02:00
Jakub Sztandera
4895c895aa
Change WinCount to int64, wire it to BlockMessage
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-06-24 19:51:22 +02:00
Jakub Sztandera
88352c74fc
Address @Magik6k CR
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-06-24 17:11:26 +02:00
Jakub Sztandera
008a2969b2
Fix two races in events
Also race fix: depends on https://github.com/ipfs/go-blockservice/pull/65
Resolves #2092, #2099, #2108, #1930, #2110

Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-06-24 17:05:24 +02:00
Jakub Sztandera
36d5880a30
Remove TestElectionExp
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-06-24 15:25:23 +02:00
Raúl Kripalani
c8104a03e6
some initial godocs. (#2118) 2020-06-23 18:51:25 -03:00
Yusef Napora
5074cf8beb import DrandConfig from dtypes 2020-06-23 16:23:06 -04:00
Yusef Napora
b448de422e improve DrandConfig dependency injection 2020-06-23 16:01:10 -04:00
Yusef Napora
628872d0e4 forgot my go fmt hook 2020-06-23 15:10:27 -04:00
Yusef Napora
960523f45f fix drand test 2020-06-23 15:09:28 -04:00
Jakub Sztandera
19ed695811
Fix TestInteropBH
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-06-23 20:37:35 +02:00
Yusef Napora
566a99240d allow overriding drand config 2020-06-23 13:33:18 -04:00
Jakub Sztandera
156a14eeeb
Integrate Poisson Sortition into chain sync
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-06-23 16:59:44 +02:00
Jakub Sztandera
97088e3109
Add golden test for exp function
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-06-23 16:33:10 +02:00
Jakub Sztandera
2b597fb780
Add tests for lambda
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-06-23 16:24:02 +02:00
Jakub Sztandera
efeaa9b6ad
Fix lint warnings
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-06-23 16:24:02 +02:00
Jakub Sztandera
d7f710806b
Implement golden tests for Poisson distribution
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-06-23 16:24:02 +02:00
Jakub Sztandera
d92362f96e
Add comments about algorithm
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-06-23 16:24:02 +02:00
Jakub Sztandera
8fea872345
Refactor poisson to struct for easier testing
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-06-23 16:24:02 +02:00
Jakub Sztandera
84c0b50aa1
Rename fxToD
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-06-23 16:24:01 +02:00
Jakub Sztandera
f523b17a35
Improve performance of ComputeWinCount
As it turns out `big.Int#Mul` doesn't like it when you reuse input as
output.

```
name         old time/op    new time/op    delta
WinCounts-8    4.56µs ± 1%    3.90µs ± 2%  -14.44%  (p=0.000 n=9+10)

name         old alloc/op   new alloc/op   delta
WinCounts-8    3.50kB ± 0%    1.15kB ± 0%  -67.23%  (p=0.000 n=10+10)

name         old allocs/op  new allocs/op  delta
WinCounts-8      45.0 ± 0%      24.0 ± 0%  -46.67%  (p=0.000 n=10+10)
```

Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-06-23 16:24:01 +02:00
Jakub Sztandera
ee5639aad9
Initial implementation of Poisson Sortition
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-06-23 16:24:01 +02:00
Łukasz Magiera
9e70e95242 sync: Correctly pass blocks to ValidateBlock 2020-06-23 14:10:47 +02:00
whyrusleeping
b71f771acb run block validation for tipsets in parallel 2020-06-22 16:09:05 -07:00
laser
5e77b5da9f bump from 3 to 4 digits in format-string
Fixes #1993
2020-06-19 08:51:06 -07:00
Jakub Sztandera
b91e7a9860
Update to specs actors with ChargeGas interface
Based on `lotus-0.6.1-chargegas` in specs-actors.

Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-06-17 20:00:30 +02:00
Łukasz Magiera
bdcb1e3592
Merge pull request #2029 from filecoin-project/feat/gas-delta-output
add some smartness to bench analyze gas output
2020-06-17 18:44:10 +02:00
Łukasz Magiera
6bff52483b
Merge pull request #1973 from filecoin-project/feat/drand-upd
Update to new drand
2020-06-16 15:30:40 +02:00
Jakub Sztandera
fd6c8769dd
Update to new drand
WIP

Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-06-16 14:46:30 +02:00
Łukasz Magiera
ab4c11c096 Merge remote-tracking branch 'origin/master' into next 2020-06-16 12:04:29 +02:00
Aayush Rajasekaran
d8a517f992 Syncer::InformNewHead can quickly fail if height is impossibly large 2020-06-16 00:51:00 -04:00
Aayush Rajasekaran
aa513d920e
Merge pull request #1705 from hayeah/cache-tipset-validation-progress
Cache tipset validation progress
2020-06-16 00:14:11 -04:00
Aayush Rajasekaran
a9abf3ceb2 extract the fake Wpost used for testing 2020-06-15 21:02:53 -04:00
Aayush Rajasekaran
ed3b2716af Don't verify ElectionPostVRF when insecure validation enabled 2020-06-15 21:02:25 -04:00
Jeromy
f8c4b64782 improve chain import analyze output, add some rough virtual gas charges 2020-06-15 16:05:29 -07:00
Łukasz Magiera
0230362d33
Merge pull request #2025 from filecoin-project/deps/specs-actors-v0.6
specs-actors v0.6
2020-06-15 21:30:37 +02:00
Jakub Sztandera
8039701f9e
Use extra field in gastrace
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-06-15 19:52:04 +02:00
Łukasz Magiera
907364ce67 Update deps, fix more tests 2020-06-15 18:30:49 +02:00
Jakub Sztandera
18cf7b046e
Merge pull request #2024 from filecoin-project/feat/virtual-gas
Add virtual gas
2020-06-15 18:27:24 +02:00
Jakub Sztandera
2a78ebabd9
Use HashVerify
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-06-15 17:39:16 +02:00
Jakub Sztandera
a23a87a17f
Add virtual gas
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-06-15 16:18:05 +02:00
Łukasz Magiera
7296ce7287 Merge remote-tracking branch 'origin/next' into feat/merge-master 2020-06-15 14:40:29 +02:00
Łukasz Magiera
70c8f7b1ee Merge remote-tracking branch 'origin/master' into feat/merge-master 2020-06-15 14:38:38 +02:00
Howard Yeh
c822816f8e Cache tipset validation progress 2020-06-14 18:41:17 +08:00
Ignacio Hagopian
82c6be14f4
unchecked errs
Signed-off-by: Ignacio Hagopian <jsign.uy@gmail.com>
2020-06-12 22:34:00 -03:00
Łukasz Magiera
fb4ad043dd
Merge pull request #2011 from filecoin-project/feat/more-callers
Expose more callers, ellipsis unimportant ones
2020-06-13 01:55:26 +02:00
Jakub Sztandera
91ea039077
Change ellipsis, more accurate timing
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-06-12 20:46:04 +02:00
Łukasz Magiera
8e025db656
Merge pull request #2014 from filecoin-project/fix/chain-reorgs-race
fix a potential race with chain reorgs notifees.
2020-06-12 20:35:16 +02:00
Raúl Kripalani
4e9293ba04 fix a potential race with chain reorgs notifees. 2020-06-12 19:18:23 +01:00
Jakub Sztandera
8ad2b3c3d9
Removed commented out code
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-06-12 18:58:55 +02:00
Jakub Sztandera
cd69e57a33
Expose more callers, ellipsis unimportant ones
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-06-12 18:49:29 +02:00
Jakub Sztandera
071ddf6563
Add aggregate number, add number of bytes for storage calls
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-06-11 22:25:24 +02:00
Jakub Sztandera
c90d35869b
Add gas tracing
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-06-11 21:59:39 +02:00
Jakub Sztandera
6acc9a62f8
Split gas internally into compute gas and storage gas
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-06-11 20:37:14 +02:00
Łukasz Magiera
c8046f4597 Merge branch 'next' of github.com:filecoin-project/go-lotus into next 2020-06-11 18:24:51 +02:00
Jakub Sztandera
491f080a37
Merge remote-tracking branch 'origin/master' into feat/merge-master
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-06-11 17:59:27 +02:00
waynewyang
8354bd91db fix:the condition of time-offset mining fault 2020-06-11 23:52:44 +08:00
Łukasz Magiera
c9a845d3aa Merge remote-tracking branch 'origin/master' into next 2020-06-11 16:29:26 +02:00
Jakub Sztandera
c3f23ddce8
Refactor ExecutionResult to ExecutionTrace
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-06-11 15:53:47 +02:00
Łukasz Magiera
8b308972a4 chainstore index: Drop wrong check 2020-06-11 15:43:24 +02:00
Jeromy
ac1048fcd7 test a few more cases 2020-06-11 12:31:32 +02:00
Jeromy
14ea847ef6 fix chain index seeking through long ranges of null rounds 2020-06-11 12:31:32 +02:00
Lucas Molas
dc112a5a00 Lotus architecture notes (#1768)
Co-authored-by: Aayush Rajasekaran <arajasek94@gmail.com>
2020-06-11 12:31:32 +02:00
Jeromy
512270593b clean up some of the more spammy logs 2020-06-11 12:31:29 +02:00
Mike Greenberg
2cd6347a13 Express block validation, cpu/mem usage via OpenCensus 2020-06-11 12:31:04 +02:00
Jeromy
1aff04faab test a few more cases 2020-06-10 22:17:29 -07:00
Jeromy
295c0861c4 fix chain index seeking through long ranges of null rounds 2020-06-10 22:15:46 -07:00
Lucas Molas
469eef8231
Lotus architecture notes (#1768)
Co-authored-by: Aayush Rajasekaran <arajasek94@gmail.com>
2020-06-09 20:17:28 -03:00
Jeromy
686c543778 clean up some of the more spammy logs 2020-06-09 12:49:31 -07:00
Mike Greenberg
ae83ca6893 Express block validation, cpu/mem usage via OpenCensus 2020-06-08 14:15:01 -04:00
Łukasz Magiera
3b56288a5e Merge remote-tracking branch 'origin/master' into next 2020-06-08 18:29:36 +02:00
Aayush Rajasekaran
49b27da426 Add delete functionality to the wallet 2020-06-07 19:36:01 -04:00
Whyrusleeping
366359803a
Merge pull request #1903 from filecoin-project/feat/reuse-get-tipset-by-height
reuse GetTipsetByHeight in GetRandomness
2020-06-05 16:06:28 -07:00
Łukasz Magiera
163c2b2544 Merge remote-tracking branch 'origin/master' into next 2020-06-06 00:58:24 +02:00
Jeromy
73d928751d disallow sourcing randomness from future epochs 2020-06-05 15:12:13 -07:00
Łukasz Magiera
3f81ff3507 Update specs-actors 2020-06-05 22:06:11 +02:00
Jeromy
51f1712564 add a simple semaphore to batch verify seals 2020-06-05 10:47:49 -07:00
Jakub Sztandera
7bee5b3abc
Merge remote-tracking branch 'origin/master' into next
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-06-05 00:33:43 +02:00
Aayush Rajasekaran
656b285195 Bugfix: Begin walkback when lookback target's height is too low 2020-06-04 18:17:54 -04:00
whyrusleeping
86083531c6 a couple bugfixes 2020-06-04 18:17:54 -04:00
Jeromy
c01f70105f implement chain index to make lookbacks faster 2020-06-04 18:17:54 -04:00
Łukasz Magiera
f9f0d86ddf
Merge pull request #1913 from acruikshank/feat/1853-confirmations-in-StateWaitMsg2
Add confidence and timeout to message wait
2020-06-04 23:23:15 +02:00
acruikshank
ce33074626 go fmt 2020-06-03 22:30:09 -04:00
Jeromy
cd817906b2 handle sourcing randomness from a future block 2020-06-03 18:30:43 -07:00
acruikshank
04f0130530 remove timeout 2020-06-03 17:42:06 -04:00
acruikshank
5574e4f11b add confidence and timeout to message wait 2020-06-03 15:38:37 -04:00
Aayush Rajasekaran
4b01b666f6 Bugfix: searchback for a message should stop if we reach sender nonce of 0 2020-06-03 14:08:05 -04:00
Jeromy
2fdcf5347b reuse GetTipsetByHeight in GetRandomness 2020-06-02 17:35:23 -07:00
Jakub Sztandera
673a972fe9
Merge remote-tracking branch 'origin/master' into next
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-06-02 22:49:27 +02:00
Jeromy
9b867a221a add subcall timing to compute state output 2020-06-02 12:53:24 -07:00
Jakub Sztandera
22851df145
Undo change in events_test
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-06-02 18:46:43 +02:00
Jakub Sztandera
96ade5f2dd
Cleanup more lint warnings
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-06-02 18:38:41 +02:00
Jakub Sztandera
5605aae269
Fix even more lint warnings
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-06-02 16:29:39 +02:00
Łukasz Magiera
c73326e96d fsrepo: Use LevelDB for metadata datastore 2020-06-01 20:13:07 +02:00
Aayush Rajasekaran
7dd25c3ac5 Correctly handle transfers with sender = receiver 2020-05-29 12:15:41 -04:00
Jakub Sztandera
241c3fa673
Merge pull request #1869 from filecoin-project/feat/drand-pubsub
Add pubsub support to drand beacon
2020-05-29 18:06:38 +02:00
Łukasz Magiera
785eeb1eee
Merge pull request #1850 from filecoin-project/chore/lint
Cleanup many lint warnings
2020-05-29 18:06:06 +02:00
Jakub Sztandera
30d82ba962
Explicity Watch for randomness
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-05-29 17:55:24 +02:00
Jakub Sztandera
71eb41b9aa
Add pubsub support to drand beacon
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-05-29 17:55:17 +02:00
Jeromy
e2a554c2e6 update specs actors to version with batch porep verification 2020-05-28 13:19:18 -07:00
frrist
9f8ecb0ac4 update chain-validation
- has new syscalls
2020-05-28 22:11:49 +02:00
frrist
be1bbe88b0 update chain-val syscalls interface 2020-05-28 22:11:49 +02:00