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