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
Ł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
05c527b681
Hold tipset lock while selecting messages
...
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-08-07 02:48:53 +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
Jakub Sztandera
ab08858b45
Delete GasPrice from this world
...
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-08-06 23:08:42 +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
vyzo
2166e9a0ff
account for message Value in balance calculation
2020-08-06 20:54:27 +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
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
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
vyzo
a08d780bef
enhance SelectMessages method to take a target message
2020-08-05 23:16:09 +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
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