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
Describe the bug
When requesting a feature flag, with the same request entityId and payload and given two rules:
Percentage rollout over a specific segment -> 50% released 50% unreleased
Match all -> unreleased
We get inconsistent match and results over sequential requests.
Version Info 0.10.0
To Reproduce
On a fresh install
Create and enable a new feature flag
Create two variants released and unreleased
Create a segment subscribers that checks "premium_user": "true"
Create a segment all users that match all
In the previously created feature flag, setup two rules (in this order):
If Matches segment subscribers then serve percentage rollout -> 50% released 50% unreleased
If Matches segment all users then serve unreleased
Expected behavior
This is a legitimate use case where we want to progressively roll-out a feature to premium users while keeping it disabled for all others.
The expected behaviour when requesting this feature flag as a subscriber (i.e. "premium_user": "true") with the same payload is to have a consistent match on the first rule.
But currently, with the exact same payload (i.e. same entityId and context) we get randomly matched on first or second rule, effectively returning an inconsistent variantreleased or unreleased for one given premium user.
Screenshots
Request A -> Match Percentage Roll out (rule 1)
Request B -> Match all (rule 2)
Please note the inconsistent value of fields segmentKey and value in the response.
Additional context
Database used: Postgres
The text was updated successfully, but these errors were encountered:
Describe the bug
When requesting a feature flag, with the same request
entityId
and payload and given two rules:released
50%unreleased
unreleased
We get inconsistent match and results over sequential requests.
Version Info
0.10.0
To Reproduce
On a fresh install
released
andunreleased
subscribers
that checks"premium_user": "true"
all users
thatmatch all
subscribers
then servepercentage rollout
-> 50%released
50%unreleased
all users
then serveunreleased
Expected behavior
This is a legitimate use case where we want to progressively roll-out a feature to premium users while keeping it disabled for all others.
The expected behaviour when requesting this feature flag as a subscriber (i.e.
"premium_user": "true"
) with the same payload is to have a consistent match on the first rule.But currently, with the exact same payload (i.e. same
entityId
andcontext
) we get randomly matched on first or second rule, effectively returning an inconsistentvariant
released
orunreleased
for one given premium user.Screenshots
Please note the inconsistent value of fields
segmentKey
andvalue
in the response.Additional context
Postgres
The text was updated successfully, but these errors were encountered: