Comportement actuel des frais

En posant un point d’arrêt dans la pallet pallet-transaction-payment dans une des méthodes qui comporte le mot fee, j’en arrive à la méthode final_fee qui est celle qui finit par donner un total de 2 ĞD en frais si lancé comme suit (mode e2e) :

cargo run -- --chain=gdev_dev --execution=Native --sealing=manual --force-authoring --rpc-cors=all --tmp --ws-port 9944 --alice

Tandis que si lancé comme suit (mode manuel) :

cargo run -- --dev

Alors je n’ai effectivement que 1 ĞD en final_fee.

A l’inspection je vois que c’est adjusted_weight_fee qui vaut 1 ĞD en mode e2e, alors qu’il vaut 0 en mode manuel :

Et en creusant, tu verras en posant un point d’arrêt dans pallet-transaction-payment.compute_fee_raw() que c’est la méthode weight_to_fee qui renvoie 1 plutôt que 0 et vient incrémenter la valeur des frais.

Sur ma branche cela s’explique par le fait que les poids calculés par Benjamin sont pris en compte dans un cas et pas dans l’autre. Sur master, je suppose que c’est pareil.

Je te laisse vérifier tout cela, ce sera l’occasion de débogguer Substrate :slight_smile:

4 Likes