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
6d9707c784
fix OptimalSelection3 test
2020-08-18 22:24:07 +03: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
vyzo
4287f76ed4
fix deadlock in mpool.Push
2020-08-18 10:19:46 +03:00
vyzo
3b6e2bdb7b
trigger early republish from head changes
2020-08-17 10:03:39 +03: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
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
Steven Allen
3ef3f570fb
Fix lint errors an broken tests
2020-08-12 23:16:44 +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
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
vyzo
f2ac17845b
relinquish the lock while signing in PushWithNonce
2020-08-12 20:26:58 +03: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
Jakub Sztandera
2efb18f677
Small fixes to mpool Trim
...
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-08-11 23:55: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
vyzo
d3baf2b9eb
fix edge case in chain creation
2020-08-11 19:32:28 +03: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