Closed
Description
The converter contract has distribute_reward, which we use now, which is called once per each validator getting rewards and then issues an ibc packet. This is N contract calls and N ibc packets every epoch.
There is also a distribute_rewards method that takes a batch of validators (all N?). This means only one contract call (saving N-1 * 60k gas). We could also use this to make one ibc packet with all distribution info.
This requires much more complex withdraw logic in the virtual-staking contract, and first we need to be able to cover that with unit tests. This in turn is blocked on some sylvia updates, and likely some cw-multi-test updates.
But when we have those dependencies ready, this would be a nice optimization to tackle.
Metadata
Metadata
Assignees
Labels
No labels