-
Notifications
You must be signed in to change notification settings - Fork 155
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
Addition of new minFeeRefScriptCoinsPerByte
protocol parameter
#3952
Comments
@lehins I see this was created before my CIP, meaning this was already in the works. Can you provide any insight into how and why this decision was made? |
minFeeRefScripts
protocol parameterminFeeRefScriptCoinsPerByte
protocol parameter
I thought we were just going to add it to the transaction size for the purposes of fee calculation? |
Certainly. Using reference scripts does not come for free from the point of view of SPOs. The node has to spend resources looking up the reference input (which is not being spent) in the UTxO, but most importantly a script needs to be deserialized. Therefore it is almost as much work for the node to process a script as if it was part of the transaction, but there is less
@michaelpj Yeah, that will still sort of going to be the case. As I said above, it will just be adjusted with a separate paramter. So, for example if |
Ok thanks! Appreciate the insight. To me, it seems like the deserialization work should logically add to the execution units rather than the tx size (so that something like partial deserialization could save on ex units), but I can understand it being easier to use the existing and much simpler tool to achieve a similar result. |
So if this is a SC execution, shouldn't that be covered by SC related "fees"? As @Quantumplation said, shouldn't this be covered by the execution units? As we have currently the discussion about the correct minFee calculation over here IntersectMBO/cardano-cli#534 , that would need an extra input parameter for the fee calculation function on cardano-cli to provide the size of the reference script or the script itself? But correct me if i am wrong. |
Is the intention to make that parameter as high as if the script had been included in the witness? Or is the intent to rather create a new incentives, without increasing the cost as much? |
Do we have an idea on what |
Honestly, I have no idea what the initial value for this parameter will be. The intent of this issue is to provide the functionality for making this possible.
I'd assume so as well. |
Sounds like a good first question for IntersectMBO to work on :) |
@michaelpj , ignoring the direct topic of the issue itself, your comment is very concerning. Is it mentioned somewhere in documentation that this plan exists to add ref script size to the size of the tx that references it? |
This was discussed in a meeting as a potential solution, but instead we decided to add a new protocol parameter that will be a multiplier for the size of reference scripts. Which is what this ticket is about. It is a strictly more powerful solution since it gives fine control over how much ref scripts will contribute to the fee of a transaction. |
Fee calculation need to be adjusted in Conway. It has been decided that size of reference scripts should contribute to the fee amount charged in a transaction.
minFeeRefScripts :: NonNegativeInterval
UTxO
argument togetMinFeeTx
:Where
getPlutusScriptSize :: Script era -> Maybe Int
is a function that calculates the size of a plutus script for anyScript
The text was updated successfully, but these errors were encountered: