-
Notifications
You must be signed in to change notification settings - Fork 67
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
[FEATURE] Ignore DISABLED flags from storage layer #673
Comments
I would not ignore them entirely, but print an "info" or "warning" log message to notify somehow that a flag is disabled. |
Ya we could do this when we update the flag state and persist it, or we could keep them in a disabled state and mention it when we evaluate them (though that might add a lot of log-noise... debug might be better in that case). |
Listing down the pros & cons of proposals Ignore at storage Pros - Fewer flags in cache (storage), considering that there can be several Disabled flags. And no extra logic for filtering Filter at retrieval Pros - Can provide logs at evaluation time for visibility. Potential future changes (if any) for Disabled flags Personally, I am voting to ignore storing Disabled flags with a debug/info log & keep a minimalistic storage layer (i.e- no filtering) |
Had a discussion with @beeme1mr @toddbaert on this. Ignoring disabled flags at the storage level is problematic as it conflicts with our sync source priority - ignoring a disabled flag at a high priority source is incorrect. Hence, we will continue to store disabled flags, process them where necessary and produce errors #670 /skip from evaluation #672 |
Requirements
Background
According to configuration guideline, when a flag is disabled, it is considered as if it doesn't exisit [1]
However, in the flagd implementation, we still handle Disabled flags and return errors to evaluation requests.
Desired behavior
PR #670 & #672 improved error handling and introduced bug fixes to disabled flags. Going forward, disabled flags must be ignored from storage which will result in flag not found status matching the configuration guide stated above
[1] -
flagd/docs/configuration/flag_configuration.md
Line 14 in 9490ed6
The text was updated successfully, but these errors were encountered: