Skip to content
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

Question - How does a change in distribution affect existing users? #161

Closed
mikeduminy opened this issue Sep 12, 2018 · 4 comments
Closed

Comments

@mikeduminy
Copy link

Assume we have a feature flag show_button with variants show and hide.

A segment was on 100% rollout and distribution was 100% for hide. Now we want to increase the percentage of people who see the button. So we adjust it to be 90% hide and 10% show.

What happens to existing users who have already been evaluated as hide?
Does the change in distribution trigger a re-assessment of everyone in that segment when they evaluate a flag?

Thanks

@zhouzhuojie
Copy link
Collaborator

Very good question!

Flagr is stateless, and the variants assignment is based on the entityID. So, yes, if you change from 0/100 to 10/90, 10% of the hide users will get show. Note that it's deterministic at random.

We also have a doc at https://checkr.github.io/flagr/#/flagr_overview?id=flagr-running-example, let me know if it helps.

@mikeduminy
Copy link
Author

Thanks for the quick response, @zhouzhuojie!

Ah the stateless part was what I was missing. So if I understand correctly, Flagr doesn't evaluate a flag and store the result somewhere, each evaluation occurs algorithmically and is deterministically random. Therefore there is no assessment to "re-trigger", the algorithm simply takes into account the percentage rollout and distribution of a segment during evaluation, so if any of the parameters change the results show up right away.

Is that accurate?

@zhouzhuojie
Copy link
Collaborator

That's right!

Flagr does log the evaluation results if you enable it - for data analytics purpose.

@mikeduminy
Copy link
Author

Fantastic! Thanks again for the prompt response 🙇

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants