Commit Graph

385 Commits

Author SHA1 Message Date
Ł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
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
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
Łukasz Magiera
d27ff60ae2 Merge remote-tracking branch 'origin/master' into next 2020-06-26 13:08:37 +02:00
Raúl Kripalani
c8104a03e6
some initial godocs. (#2118) 2020-06-23 18:51:25 -03: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
Ł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
Ł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
ed3b2716af Don't verify ElectionPostVRF when insecure validation enabled 2020-06-15 21:02:25 -04:00
Jakub Sztandera
2a78ebabd9
Use HashVerify
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-06-15 17:39:16 +02:00
Howard Yeh
c822816f8e Cache tipset validation progress 2020-06-14 18:41:17 +08:00
Jakub Sztandera
c90d35869b
Add gas tracing
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-06-11 21:59:39 +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
Mike Greenberg
2cd6347a13 Express block validation, cpu/mem usage via OpenCensus 2020-06-11 12:31:04 +02:00
Lucas Molas
469eef8231
Lotus architecture notes (#1768)
Co-authored-by: Aayush Rajasekaran <arajasek94@gmail.com>
2020-06-09 20:17:28 -03:00
Mike Greenberg
ae83ca6893 Express block validation, cpu/mem usage via OpenCensus 2020-06-08 14:15:01 -04: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
Jeromy
88fa9726cc use chainmsg type instead of unsigned message for gas price checking 2020-05-14 12:44:26 -07:00
Jeromy
881b0517b1 reuse logic between message selection and validation 2020-05-14 12:29:11 -07:00
Aayush Rajasekaran
2e74e1d2ae Don't assert params must be empty for Methodnum = 0 2020-05-14 15:10:07 -04:00
Łukasz Magiera
4c64f0ca11 sync: enforce message gas limits 2020-05-13 03:36:56 +02:00
Łukasz Magiera
ba389598ee Cleanup build package 2020-05-12 19:59:28 +02:00
Łukasz Magiera
6712560779 fix import ordering 2020-05-12 13:48:09 +02:00
Aayush Rajasekaran
6bf2dcd97c Message validation changes 2020-05-11 21:54:44 -04:00
Jeromy
d415aa779c also check bls aggregate signature nilness 2020-05-08 11:07:57 -07:00
Jeromy
f8c15e2d2d more checks in sync 2020-05-08 11:06:47 -07:00
Jeromy
8a69467982 add some simple sanity checking to incoming blocks in the syncer 2020-05-08 10:59:18 -07:00
Jeromy
be2a357102 winning post wants the actual epoch of the block, not the previous 2020-05-01 12:42:59 -07:00
Łukasz Magiera
4d51f9f700 Merge pull request #1647 from filecoin-project/feat/this-weeks-randomness-changes-2
fix winning post inputs
2020-04-30 22:30:40 +02:00
Jeromy
c4852e04c9 Use miner address in randomness mixing 2020-04-30 13:21:46 -07:00
Jeromy
931a862abc remove usage of previous round in beacon entries 2020-04-30 11:39:37 -07:00
Jeromy
4b3cc2ca7e fix winning post inputs 2020-04-30 11:27:22 -07:00
Jeromy
d73b369fa5 implement latest changes to randomness 2020-04-29 16:50:45 -07:00
Whyrusleeping
faa9002cce working on sector pledge requirements after specs-actors 1.0.0 (#1584)
* WIP: working on sector pledge requirements after specs-actors 1.0.0

* update storage-fsm with pledge collateral logic

* Set bigger balances for miners

* Return only additional required pledge

* split collateral methods into two methods

Co-authored-by: Łukasz Magiera <magik6k@gmail.com>
2020-04-23 12:39:34 -07:00
Łukasz Magiera
d99f40797e sync: env var to fix drand 2020-04-20 19:43:02 +02:00
Jeromy
91f56742c4 Use lookback to get sector set and power for miners 2020-04-17 16:44:18 -07:00
Łukasz Magiera
712e2683d6 miner: proving info commands 2020-04-18 00:02:18 +02:00
Łukasz Magiera
e6270e4291 Update fsm; get sectorset form correct ts 2020-04-17 21:49:32 +02:00
Łukasz Magiera
93b2b6d65d Merge branch 'testnet/3' into feat/windowed-post 2020-04-17 18:38:20 +02:00
Łukasz Magiera
bab352fb44 Wireup WinningPost validation 2020-04-17 16:47:19 +02:00
Jeromy
708988244d WIP: working on winning post integration 2020-04-16 22:39:55 -07:00
Jeromy
05536042f9 drop outdated comment 2020-04-14 16:37:10 -07:00
Jakub Sztandera
624dd7d2ce Verify PrevRound too
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-04-14 16:18:34 +02:00
Jakub Sztandera
3e976fd74b Make tests pass
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-04-14 16:09:11 +02:00
Jeromy
674be39af1 real drand network integration 2020-04-13 20:06:10 -07:00
Łukasz Magiera
bb3789b130 Fix ADT uses 2020-04-13 23:06:11 +02:00
Jeromy
c5c18659a4 address some review 2020-04-08 17:24:10 -07:00
Jeromy
ef6fb1b756 rename beacon to randombeacon 2020-04-08 16:10:08 -07:00
Jakub Sztandera
ce4978d8c3 Reintroduce correct ticket randomness alongside ElectionProof
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-04-08 21:06:41 +02:00
Jakub Sztandera
f1c890ca54 Tests pass
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-04-08 18:31:16 +02:00
Jeromy
8e0ca306d2 more wiring up of drandomness 2020-04-08 08:11:42 -07:00
Jeromy
056284c00b wip: chain sync winner check 2020-04-07 15:54:01 -07:00
Jakub Sztandera
9fd1b95fd5 Fix build errors
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-04-07 15:32:23 -07:00
Jakub Sztandera
9c250f24fa Nex wip
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-04-07 15:32:23 -07:00
Jakub Sztandera
afdb1db529 drand wip
,
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-04-07 15:32:23 -07:00
Jeromy
7075eaba26 WIP: random beacon interface
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-04-07 15:32:23 -07:00
Jeromy
fe1d61b276 also use correct set when validating blocks 2020-04-01 18:39:38 -07:00
Jeromy
27d57264d9 properly handle partial sync responses 2020-04-01 11:35:09 -07:00
Jeromy
417d434973 several fixes and improvements while debugging interop 2020-03-31 18:35:23 -07:00
Łukasz Magiera
95ee1c1cde Extract sector-storage 2020-03-28 01:32:39 +01:00
Łukasz Magiera
c66d3dfad7 sectorstorage: Untangle from lotus deps 2020-03-27 22:35:33 +01:00
Łukasz Magiera
de1f2be505 Merge pull request #1458 from filecoin-project/feat/merge-sectorbuilder
Merge sectorbuilder into sectorstorage
2020-03-27 18:53:58 +01:00
Łukasz Magiera
e050e0307e Cleanup after dropping sectorbuilder 2020-03-26 20:35:16 +01:00
Łukasz Magiera
4be54a976c Merge sectorbuilder into sectorstorage 2020-03-26 03:51:06 +01:00
Jakub Sztandera
7a6eb723ad Use correct epoch for vrf
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-03-26 01:33:35 +01:00
Jakub Sztandera
300c89f541 Update to new sepcs actors, more debug
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-03-26 01:02:13 +01:00
Jeromy
9e67bef4bd drop balance checks in block validation 2020-03-23 18:50:58 -07:00
Łukasz Magiera
eeec5a1bba Merge pull request #1274 from filecoin-project/feat/doc/actors
doc: add comments related to actor code review
2020-03-23 12:49:41 +01:00
Jeromy
f1dbd35407 change genesis fields to match interop 2020-03-21 15:25:00 -07:00
whyrusleeping
438aac190f use proper lookback, and proper serialization for randomness generation 2020-03-20 12:20:56 -07:00
Aayush Rajasekaran
5e46c0b4e9 Use blake2b, not SHA, for VRFs 2020-03-20 11:23:22 -07:00
Lucas Molas
d21cb96ddb doc: add comments related to actor code review 2020-03-18 16:43:58 -07:00
whyrusleeping
24bf720a9a Merge branch 'master' into testnet/3 2020-03-07 16:46:12 -08:00
Aayush Rajasekaran
2d63b007f2 Unify MethodCall and ReplayResults into SimulationResult
- Call and Replay now return the same type, which includes both Message and MessageReceipt
2020-03-06 11:10:40 -08:00
Łukasz Magiera
1d3877fab3 sync: Use correct epost randomness 2020-03-04 06:32:33 +01:00
whyrusleeping
60b19c51ef more misc fixes 2020-03-01 17:09:38 -08:00
Nate Walck
33af2409e8 Use head notif func for current node height, add pubsub metrics 2020-03-01 19:26:09 -05:00
Nate Walck
353c5d8b12 Relocation opencensus metrics to its own package and add more node stats 2020-02-27 21:49:18 -05:00
whyrusleeping
df6e3e83bf make it all build finally 2020-02-27 13:45:31 -08:00
Łukasz Magiera
ae634ef7df actors: Remove addrass aliases 2020-02-25 21:54:58 +01:00
Łukasz Magiera
d787aa5007 Merge branch 'testnet/3' into feat/specs-actors 2020-02-24 18:32:02 +01:00
Łukasz Magiera
917df9a5b8 More unified randomness handling 2020-02-23 21:00:47 +01:00
Łukasz Magiera
226685dc1c Implement committed capacity sectors 2020-02-23 01:47:47 +01:00
Łukasz Magiera
b8428423a1 get chain to runnable state 2020-02-22 14:10:46 +01:00
Łukasz Magiera
69ec3c205a Merge remote-tracking branch 'origin/master' into testnet/3 2020-02-19 22:10:14 +01:00
Łukasz Magiera
0d6cfc879d Use specs-actors ignatures 2020-02-13 00:52:36 +01:00
whyrusleeping
243b295559 expose bad block cache reasons through api/cli 2020-02-11 23:44:55 -08:00
whyrusleeping
0661a1bbfc mark down reason for block inclusion in bad tipset cache 2020-02-11 23:21:11 -08:00
Łukasz Magiera
63e801e00f genesis: Cleanup the structure 2020-02-11 21:48:03 +01:00
Łukasz Magiera
fa2c6605c2 Fix compilation after dep updates 2020-02-11 02:11:58 +01:00
Łukasz Magiera
13435aebdc Spec Actors integration 2020-02-08 03:18:32 +01:00
whyrusleeping
d4338047af mark bad should be respected for every incoming tipset 2020-02-06 22:39:24 -08:00
Łukasz Magiera
72c89ab89b Merge pull request #1223 from filecoin-project/fix/squash-forks
squash forks and use correct amt library everywhere
2020-02-06 20:14:55 +01:00
Łukasz Magiera
cbf63aab1e Merge branch 'master' into testnet/3 2020-02-05 21:27:04 +01:00
whyrusleeping
faf05cafcf squash forks and use correct amt library everywhere 2020-02-04 18:26:42 -08:00
whyrusleeping
028a113737 Make it all build 2020-02-04 14:19:05 -08:00
Jakub Sztandera
5e6ab42cb8
Don't depend on ffi
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-02-04 15:12:04 +01:00
Łukasz Magiera
a2bcc1fec2 Mostly functional mock sectorbuilder 2020-01-14 03:05:35 +01:00
whyrusleeping
83605dfd95 check for duplicate candidates in block headers 2020-01-10 09:57:58 -08:00
Jakub Sztandera
1ed62628a7
Update go-log to v2
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-01-08 20:22:31 +01:00
Łukasz Magiera
1392dcc273 Merge remote-tracking branch 'origin/master' into feat/testnet2 2020-01-08 13:53:01 +01:00
whyrusleeping
897cf72933 Add command to mark given blocks as bad 2020-01-07 21:42:15 -08:00
Łukasz Magiera
7b134b8317
Merge pull request #1031 from filecoin-project/feat/block-message-limit
introduce a limit on the number of messages a block can have
2020-01-07 21:48:57 +01:00
Łukasz Magiera
22e9815928 Merge remote-tracking branch 'origin/master' into feat/testnet2 2020-01-07 21:45:30 +01:00
whyrusleeping
a109ae1490 introduce a limit on the number of messages a block can have 2020-01-07 12:41:26 -08:00
laser
841f9c3627 reorganize imports to pass linter 2020-01-07 08:23:12 -08:00
acruikshank
7873213b11 switch sectorbuilder from lib to external module
point to correct version of sectorbuilder + ensure go-datastore stays at 0.1.1

replace local address type with go-address

consume paramfetch.GetParams instead of local paramfetch.go

remove constants now defined in sectorbuilder
2020-01-07 07:48:43 -08:00
Łukasz Magiera
97ae184d0a Merge remote-tracking branch 'origin/master' into feat/testnet2 2020-01-07 15:06:35 +01:00
hannahhoward
8418464d91 refactor(address): use extracted address library
Switch to using extracted address library
2020-01-07 14:53:27 +01:00
Łukasz Magiera
605562467d Flatten fork code for testnet2 2020-01-06 19:39:57 +01:00
whyrusleeping
e5899f614a Tag peers who send us good blocks over pubsub 2019-12-19 12:47:55 -08:00
whyrusleeping
3cb4a60db4 some log cleanup and an extra trace value 2019-12-17 14:15:51 -08:00
Whyrusleeping
31327a383f
Merge pull request #948 from filecoin-project/feat/sybill-fun
Basic sybill resistance mechanisms
2019-12-17 20:45:45 +01:00
Łukasz Magiera
4ea6305771 sync: Check bls aggregate early 2019-12-17 12:20:09 +01:00
whyrusleeping
7dcc528cd1 tag peers who propagate good blocks to us 2019-12-16 23:06:48 -08:00
whyrusleeping
4e4d6fb8de parallelize bls message hashing for validation 2019-12-16 19:36:32 -08:00
Łukasz Magiera
3892e94bfe
Merge pull request #938 from filecoin-project/feat/load-tipset-cache
cache load tipset
2019-12-16 21:13:03 +01:00
whyrusleeping
6e94377469 cache load tipset 2019-12-16 11:22:56 -08:00
Łukasz Magiera
f297409d6d
Merge pull request #936 from filecoin-project/feat/cleanup-logspam
clean up some log spam
2019-12-16 18:17:14 +01:00
whyrusleeping
99eae286c2 clean up some log spam 2019-12-16 09:14:21 -08:00
whyrusleeping
159117e720 dont allow submitting blocks more than a second in the future 2019-12-15 16:43:32 -08:00
Jakub Sztandera
b96da09a5d
Add additional checks
License: MIT
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2019-12-12 14:24:24 +01:00
Jakub Sztandera
1eed506728
Implement fork
License: MIT
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2019-12-12 14:16:47 +01:00
Jakub Sztandera
344dd2ca5a
Fix candidate check
License: MIT
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2019-12-12 14:12:43 +01:00
Jakub Sztandera
ae2a694dcb
Remove sync time
License: MIT
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2019-12-11 22:03:53 +01:00
whyrusleeping
f141849df5 fix incoming tipset bucketing 2019-12-11 21:41:24 +01:00
whyrusleeping
12eed004ae fix all panics from calling NewTipSet on an empty set of blocks 2019-12-10 22:41:02 +01:00
Henri S
9e363f9266
fix target for ePoSt IsTicketWinner fn
License: MIT
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2019-12-09 18:34:15 +01:00
whyrusleeping
8181b283c0 don't accept blocks from slashed miners 2019-12-07 18:59:34 +01:00
whyrusleeping
1b475ba6fe some fixes from staticcheck in ./chain 2019-12-04 17:18:30 -08:00
lanzafame
54df1c7be0 add error status to trace 2019-12-05 09:22:13 +10:00
whyrusleeping
c302051bc2 add duration tracking to sync status 2019-12-03 20:59:41 -08:00
whyrusleeping
034f0cc479 track sync errors in status 2019-12-03 19:56:29 -08:00
whyrusleeping
2d15e925cd WIP: improve timing of mining 2019-12-03 18:53:49 -08:00
Łukasz Magiera
f4c082c7de
Merge pull request #690 from filecoin-project/fix/message-nonce-head-change
Fix message nonce tracking during head changes
2019-12-03 00:34:11 +01:00
Łukasz Magiera
ab36a5aa04 wip fixing IsTicketWinner 2019-12-02 23:46:49 +01:00
whyrusleeping
b58e7344e8 pull messagepool into separate package 2019-12-02 14:33:11 -08:00
Łukasz Magiera
1cdf6a6f8d use challangeCount as sampleRate in IsTicketWinner 2019-12-02 15:24:27 +01:00
whyrusleeping
422e25c8e6 self review: some cleanup 2019-11-30 22:02:52 -06:00
whyrusleeping
3b533ed76c Genesis miner config actually sets the created miner address now 2019-11-29 22:31:26 -06:00
Łukasz Magiera
aefd432422 actors: Fallback post progress 2019-11-28 13:46:56 +01:00
Łukasz Magiera
23e0008b81 Merge remote-tracking branch 'origin/master' into feat/election-post 2019-11-27 13:31:44 +01:00
Łukasz Magiera
03b1d2329f seed: Call AcquireID for sectorIDs 2019-11-27 12:58:16 +01:00
laser
3623925f66 replace go-bls-sigs and go-sectorbuilder with filecoin-ffi
- remove old submodules and add new submodule
- update build tooling to consume new unified static library
- update consumers of old libs to use new package
2019-11-26 18:16:37 -08:00
Łukasz Magiera
407f6fa6f8 sync: correct vrfBase for ticket check 2019-11-26 23:54:11 +01:00
Łukasz Magiera
8297feb1d3 Pass correct randomness to EPoSt Verification 2019-11-26 18:29:18 +01:00