This repository has been archived by the owner on Nov 15, 2023. It is now read-only.
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Introduce
Payees
andPayoutDestination
withSplit
variant #14451base: master
Are you sure you want to change the base?
Introduce
Payees
andPayoutDestination
withSplit
variant #14451Changes from 96 commits
49afbb8
035d3d3
bd81a16
0177e16
05b7f59
f174e0c
39464e3
e2294bd
189ec01
6649a5f
b576b60
9a0ee29
20917d5
6477371
11e090a
872b2f3
54f8c31
4c8459f
2ddd9bb
453adcf
772a209
0171ef1
5b21689
7504756
d22cf19
584228c
d3e35de
6173886
d051545
066efdf
959cb8d
8582237
a9f7157
4b9aed2
fcef79d
29ae76d
1dc6f10
54e6ef7
34376ac
8593c65
b30f54f
05fefa1
e15b790
474344c
9ccf4c5
734ed8c
c3cccdc
047421d
3a88897
c39b9bd
bd12a7a
1f80dd4
d606a05
05c77a8
ddadf10
1dc3979
7605e89
c59c2bf
9b353ba
a003a5e
2dc7bb4
cdc1ae0
df9efe0
25884ac
d76d82b
3761ce9
8234a9e
4c8bfbd
4a5a0b8
70117ca
adab51c
7d41deb
5f947c6
2d7778f
9135008
088467d
51689e7
9832993
98f5d23
78d2fd3
38afc4b
ab50eb3
69745ab
e37b29a
b4e4d89
c91a017
20f99e2
cc24251
341b520
a54a28a
84de89d
fb68087
7ecd0b5
58ced37
963e1ba
474218b
55c32be
21f9605
f65d246
758f76d
b609639
5dd8c2b
5b29b62
aa7fc8a
6fd52f0
6af6146
70b6d6d
caa5296
2d43c90
10511bf
d509515
488b7b1
6d048b2
fa8b675
49bb802
16cf061
4883f61
32cbf81
be099e8
cbe94a4
ffcdb2c
711dfc8
8296d85
File filter
Filter by extension
Conversations
Jump to
There are no files selected for viewing
Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Not sure if this matters but I would write my observation here.
We had limited the maximum nominators to be rewarded to 512 to limit i/o for
payout_stakers
call. With the split enabled, in worst case, there would be 1024 payments. Not sure how we came to the number 512 but would be good to get a second opinion about this from @kianenigma?Also, payout_stakers_alive_staked is now benchmarked with worst case scenario of 2 payouts per nominator. This means the fees that will be charged would be a bit higher than before, even if the nominator payout type is not split. The ideal way to do this would be to benchmark this on n =
number of payouts
counting split payments as 2 instead of n =count of nominators
. Although admittedly, may be I am being too pedantic and it might be totally okay to charge a bit higher fee (lower would be a bigger concern).There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
It is relatively easy to get the number of payouts from
PayoutDestination
, something like:But the benchmark function would need to know the total
num_payouts
value of all then
s to get a precise weight - and this info is not available in the call data. I would assume this is only possible if we are only making the payout for 1PayoutDestination
where we could easily derivenum_payouts
.Paged payouts will also eventually lead to a much smaller estimated fee, that will minimise this worst case weight.