Commit Graph
59 Commits
Author SHA1 Message Date
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
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
vyzo ca552cf83b deduplicate some block validation logic 2020-08-17 21:03:08 +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
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
Łukasz Magiera 051be61452 gofmt 2020-08-07 15:04:10 +02:00
Lucas Molas 76d40ec408 first pass, ready for review 2020-08-03 12:20:04 -03:00
Lucas Molas 595de3fccb fix: block validator: check against heaviest tipset 2020-07-30 18:05:28 -03:00
Aayush Rajasekaran b51e2a868b Merge branch 'next' into feat/cid-builder 2020-07-28 21:02:30 -04:00
Aayush Rajasekaran 859168015a Use specs actor's MinerNominalPowerMeetsConsensusMinimum 2020-07-28 17:21:05 -04: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
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
Raúl Kripalani 13de81b3b2 introduce the ability to mock time. 2020-07-10 15:51:45 +01:00
Łukasz Magiera 4c422c2d50 specs-actors v0.7.1 2020-07-01 13:47:40 +02: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
Jeromy 512270593b clean up some of the more spammy logs 2020-06-11 12:31:29 +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
vyzo cc98117df2 log block validation time 2020-05-22 17:21:37 +03:00
vyzo 50e05ae1ba use sigs.CheckBlockSignature 2020-05-14 20:48:40 +03:00
vyzo 432c69c616 update message validator to provide rejection signal 2020-05-14 20:48:40 +03:00
vyzo e714294273 initialize map 2020-05-14 20:48:19 +03:00
vyzo c3a144bcb6 flesh out signature validation logic 2020-05-14 20:48:19 +03:00
vyzo dd86a289ce cache miner worker keys 2020-05-14 20:48:19 +03:00
vyzo 6e0dac06f4 utility to retrieve miner worker key from the chain 2020-05-14 20:48:19 +03:00
vyzo 5bd0e92068 remove source flagging from bogus CID blocks
it's ineffective.
2020-05-14 20:48:19 +03:00
vyzo eb24baa70c use go-libp2p-core/peer instead of the deprecated alias, try to pacify the silly linter 2020-05-05 17:26:59 +03:00
vyzo 4e5179557d flag block source when messages cannot be retrieved 2020-05-05 16:49:43 +03:00
vyzo 5824714cdc use extended validator interface 2020-05-05 16:35:03 +03:00
Jeromy 417d434973 several fixes and improvements while debugging interop 2020-03-31 18:35:23 -07:00
Aayush Rajasekaran 6fda3c877e Re: #1302: Refine invalid message filtering
- This commit slightly weakens the current invalid message check
- The behaviour is that if you can't add a message to your pool, you *probably* won't broadcast it to your peers
- The exceptions are that you will broadcast a message if you fail to validate it because nonce / balance lookup fails
- This commit also lowers the invalid message log to debug (to lessen the annoyance of several invalid messages coming in, and hopefully to prevent confusion among node operators)
2020-03-18 03:14:18 -04:00
Adrian Lanzafame d0c748460e remove high cardinality tags from metrics 2020-03-05 19:47:20 +10:00
Nate Walck 8283bb994a Add block metrics to incoming pubsub validate funcs 2020-03-01 19:57:16 -05:00
Nate Walck 33af2409e8 Use head notif func for current node height, add pubsub metrics 2020-03-01 19:26:09 -05:00
whyrusleeping 00efd097c7 implement basic message filtering 2020-02-27 17:40:16 -08:00
whyrusleeping 1dafcf24f1 basic gossip spam protection logic 2020-02-16 21:51:18 -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
whyrusleeping a109ae1490 introduce a limit on the number of messages a block can have 2020-01-07 12:41:26 -08:00
whyrusleeping e5899f614a Tag peers who send us good blocks over pubsub 2019-12-19 12:47:55 -08:00
whyrusleeping 6cb6167393 bump up filecoin related weights 2019-12-17 10:16:10 -08:00
whyrusleeping 7dcc528cd1 tag peers who propagate good blocks to us 2019-12-16 23:06:48 -08:00
whyrusleeping f141849df5 fix incoming tipset bucketing 2019-12-11 21:41:24 +01:00
whyrusleeping d3f08c5243 remove more spammy logs 2019-12-07 23:32:34 +01:00
whyrusleeping bc343dbb67 flag blocks that are received too late 2019-12-07 11:49:05 +01:00
whyrusleeping b58e7344e8 pull messagepool into separate package 2019-12-02 14:33:11 -08:00
whyrusleeping c9a5d974c1 drop message nonce message down to a warning 2019-11-14 19:26:13 -08:00
Łukasz Magiera 8f0e3ede24 Bunch of small fixes / improvements, gofmt 2019-11-13 15:48:57 +01:00
Łukasz Magiera 29778cd653 Mostly fix TestDealFlow 2019-11-07 01:18:06 +01:00
Jakub Sztandera 1bf713cb0a Cleanup imports after rename
License: MIT
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2019-10-18 13:47:41 +09:00
Jakub Sztandera 49e3fe39f8 Structure logs
License: MIT
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2019-10-11 02:00:04 +02:00