-
Notifications
You must be signed in to change notification settings - Fork 552
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
Properties revert back to default value upon restart, upgrade related #15674
Comments
Few thoughts while it’s fresh: When we apply our feature table snapshot on startup, first we // src/v/features/feature_table_snapshot.cc
void feature_table_snapshot::apply(feature_table& ft) const {
...
ft.set_active_version(version);
...
ft.set_applied_offset(applied_offset);
ft.set_original_version(original_version);
ft.on_update();
} Maybe this is why the “old” Also, this condition is suspiciously broad: if (ov <= _legacy_default.value().max_original_version && is_default()) { Where is_default() just checks whether the property’s current value is equal to the default. There’s no distinction as to whether the property took a default value or was set there. That’s presumably why @dotnwat's legacy default test didn’t display this behavior: it sets the property to None of that's conclusive (and @BenPope stated most or all of it already), but this is about as much as I have my head around right now. |
I think i observed something similar some months ago, but I couldn't follow up and it fell through the cracks in my case, it has to do with property aliases, but the effect is similar - a property resetting to a previous value. i captured this log where it shows that it's reapplying the alias name and the proper name in succession
so fixing this should fix the same issue with aliases. hopefully what i wrote makes sense |
Test cases welcome! |
Version & Environment
Redpanda version: v23.2.16
In an upgraded cluster from v23.1.x, a property value reverts back to the original one unexpectedly.
Confirmed properties are:
space_management_enable
retention_local_strict
What went wrong?
See repro steps
What should have happened instead?
Saved value should not change
How to reproduce the issue?
space_management_enable
is falserpk cluster config set space_management_enable true
a. Confirm the value is persisted;
rpk cluster config get space_management_enable
returnstrue
rpk cluster config get space_management_enable
returnsfalse
Additional information
https://redpandadata.slack.com/archives/C06AT54L2M6
The text was updated successfully, but these errors were encountered: