-
Notifications
You must be signed in to change notification settings - Fork 3.8k
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
The semantics of specifying multiple fees in configuration should be OR instead of AND #3239
Conversation
… to be paid in all denoms specificed in the minimium_fees to the intended behavior of allowing fees to be paid in any specific denom
Codecov Report
@@ Coverage Diff @@
## develop #3239 +/- ##
===========================================
- Coverage 54.88% 54.85% -0.03%
===========================================
Files 133 133
Lines 9555 9556 +1
===========================================
- Hits 5244 5242 -2
- Misses 3989 3992 +3
Partials 322 322 |
@alessio can you review and maybe help me write a test for this? |
I have a branch over here the backports this fix to https://github.com/zmanian/cosmos-sdk/tree/zaki/any_fees_hotfix |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Assuming this is what was intended (OR instead of AND), then it LGTM. We should have an CLI and ante handler test(s).
Co-Authored-By: zmanian <[email protected]>
You can update
|
I'll take a crack at that @alexanderbez |
So I've added the requested cases to the
Also, while playing around with this I also was able to get a transaction to go through using |
I've tested zaki's hotfix.
|
@jackzampolin do you have all the information you need? Perhaps we should hold off on the unit test. |
You need to specify the fee even during generate only @winslyn |
@alexanderbez I think we need to get the unit test working as right now it isn't |
// greater amount in coinsA. | ||
func (coins Coins) IsAnyGT(coinsB Coins) bool { | ||
diff, _ := coins.SafeMinus(coinsB) | ||
if len(diff) == 0 { |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The thing is, this does not check whether a denom is in the coinset B
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
...and that is cause SafeMinus does not carry out such check
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Thanks @alessio -- just a minor bit of feedback.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Pending approval once integration_tests
is fixed 👍
The intended behavior in the mempool is that any denom specified in the configuration parameter
--minimum
should be sufficient to pay fees. The current behavior requires all denoms to pay fees.For Admin Use: