-
Notifications
You must be signed in to change notification settings - Fork 252
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
feat!: override default mempool params #1008
Conversation
Codecov Report
@@ Coverage Diff @@
## main #1008 +/- ##
===========================================
+ Coverage 27.15% 51.09% +23.93%
===========================================
Files 81 71 -10
Lines 9021 4378 -4643
===========================================
- Hits 2450 2237 -213
+ Misses 6335 1915 -4420
+ Partials 236 226 -10
Help us with your feedback. Take ten seconds to tell us how you rate us. Have a feature suggestion? Share it here. |
b75ee0c
to
e37a5a3
Compare
MaxTxBytes
and TTLNumBlocks
e37a5a3
to
c4203c4
Compare
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!! tested locally and it works as expected
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!! tested this locally and it worked as expected
One thing I didn't consider until after merging is that it should be possible for validators to override this default param by configuring |
thanks for testing, I didn't test, but I did check it out the code in the sdk and it looked like we should be good https://github.com/celestiaorg/cosmos-sdk/blob/a78f3e1b2d09a853695c1b85da72a37445d7124f/server/util.go#L201-L225 |
Tested by adding the following log after this: logger.Info("config.Mempool.Version", "config.Mempool.Version", config.Mempool.Version) and running rm -rf ~/.celestia-app
./scripts/single-node.sh
cat ~/.celestia-app/config.toml // verified that mempool version is "v1" the mempool version configured in
|
@rootulp was this breaking? |
I think so because configuration changes can be considered breaking changes |
there's no harm in leaving it, but I actually think this is one of the few changes that we can make that is not breaking given that it is strictly a default change (anyone can change this at any time) and its part of the mempool (not consensus critical) |
I think it's subject to interpretation but assume we don't mark this change as breaking and a validator upgrades from a celestia-app release before this change to a release after this change. Assume the validator intends to use the FIFO mempool but hasn't overriden any config because the default config previously did what they want. The validator operator upgrades blindly because the release notes don't mark this as a breaking change so they don't expect any visible behavior change. After the upgrade, the validator (contrary to their desire) is using the prioritized mempool. I see your point that it's not consensus critical and is overridable so I think this change could be interpreted as non-breaking but if there's ambiguity on whether a change should be marked breaking vs. non-breaking, I think it's safer to mark as breaking to explicitly call out to consumers behavior changes that they should be aware of when upgrading. In the future (i.e. post mainnet launch), I think we'll have to be much more careful about releasing / labeling breaking changes and make an effort to minimize the number of such changes. |
Yes I agree 🙂. As you and I have discussed in the past, almost everything we do is breaking (except changes to the default config imho 😅).
Doesn't this require resetting their config? If they only upgrade binaries (most situations) or use their own custom config (all validator setups and most power users) thier mempool will be the same, that's why I don't see this as breaking.
okay let's keep it breaking 🙂. |
Oh very good point, the situation I described would involve resetting their config which wouldn't happen if strictly upgrading binaries. |
Supersedes celestiaorg/celestia-core#885 Closes celestiaorg/celestia-core#812 Closes celestiaorg/celestia-core#867 Closes #590
Supersedes celestiaorg/celestia-core#885
Closes celestiaorg/celestia-core#812
Closes celestiaorg/celestia-core#867
Closes #590