-
Notifications
You must be signed in to change notification settings - Fork 332
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Charge gas per message share #431
Comments
to update from a sync: we still want to include the in message padding when calculating gas costs. This effectively means also including the padding in the last share when calculating gas costs. This means that we will be charging per share used, instead of per byte. We will not be including padding from the non-interactive defaults into gas costs. |
Clarification: I infer this as paying for each byte used by the message shares associated with a PFD (including namespace IDs, info bytes, message length delimiter, and padding). I also infer this as not charging for the amount of transaction shares associated with the PFD. |
Closes #431 Co-authored-by: CHAMI Rachid <chamirachid1@gmail.com>
Closes celestiaorg#431 Co-authored-by: CHAMI Rachid <chamirachid1@gmail.com>
Closes celestiaorg#431 Co-authored-by: CHAMI Rachid <chamirachid1@gmail.com>
Closes celestiaorg/celestia-app#431 Co-authored-by: CHAMI Rachid <chamirachid1@gmail.com>
Padding was removed from messages entirely in #419 as it was causing complexity. We can however still pay for padding by increasing the declared size of the message in the
MsgPayForData
andMsgWirePayForData
. While this will slightly complicateValidateBasic
, it is definitely possible.It's worth noting that paying for padding isn't enforceable. As previously discussed conversations around fee burning, due to tendermint's deferred execution model, enforcing that a message declare the correct padded size is not possible atm. It would be trivial for a block producer to include a
MsgPayForData
transaction that declares the size to be 0 or whatever size they want. This isn't really an issue, as its the same as a block producer including a message with a zero fee. However, adding a check inValidateBasic
would stop messages that are not paying for padding from being propagated by nodes running unmodified software.The text was updated successfully, but these errors were encountered: