You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Enabling and disabling feature flags takes way too long right now, because we don't only have to update the config, we need to restart all nodes to apply the new config, which can take hours for large databases. We need to fix feature flags and update them at runtime, as soon as the new config is uploaded. Here's a rough plan:
Write a code generator that would generate TFeatureFlags class from protos
Values would be stored as atomic bit flags. Get... and Set... would need to update those atomically. operator= and Merge methods would change those in batches (no need to guarantee consistency between different flags though, since 64 bits wouldn't be enough for all flags). Has... methods shouldn't be needed, which would simplify bit management.
Make sure current uses of AppData()->FeatureFlags won't break when flags start changing at runtime, and switch to the new class.
Write a config updater actor, that would subscribe to feature flags updates and apply new config at runtime.
The text was updated successfully, but these errors were encountered:
Enabling and disabling feature flags takes way too long right now, because we don't only have to update the config, we need to restart all nodes to apply the new config, which can take hours for large databases. We need to fix feature flags and update them at runtime, as soon as the new config is uploaded. Here's a rough plan:
TFeatureFlags
class from protosValues would be stored as atomic bit flags.
Get...
andSet...
would need to update those atomically.operator=
andMerge
methods would change those in batches (no need to guarantee consistency between different flags though, since 64 bits wouldn't be enough for all flags).Has...
methods shouldn't be needed, which would simplify bit management.AppData()->FeatureFlags
won't break when flags start changing at runtime, and switch to the new class.The text was updated successfully, but these errors were encountered: