-
Notifications
You must be signed in to change notification settings - Fork 39
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
The client doesn't return correct value when used with unleash-edge #165
Comments
Hi @JonasBak , thanks for bringing this to our attention. I will try to reproduce, investigate and get back to you |
Thanks for looking into it, I tried comparing the data returned by edge and "not-edge", and these are the differences ( 8,9d7
< "stale": false,
< "impressionData": false,
10a9
> "stale": false,
23c22,24
< "variants": []
---
> "variants": [],
> "description": null,
> "impressionData": false
26d26
< "segments": [],
28c28
< "projects": [
---
> "project": [
32c32,37
< "inlineSegmentConstraints": false
---
> "inlineSegmentConstraints": true
> },
> "meta": {
> "revisionId": 424,
> "etag": "\"181720d4:424\"",
> "queryHash": "181720d4"
There are some fields that are added/removed, as well as |
Hello @JonasBak, thank you for bringing this up. I have:
From what I can tell edge works as it should. I also took a look at your update with the diff in the returned JSON, but there's nothing there that stands out. I think a good next step is to validate any constraints that may have been put on your strategy, appname for instance, against what is being defined in your apps. Also:
The "enabled" property here does not reflect the result of feature flag evaluation, which happens inside the Unleash .NET Client SDK based on the defined parameters, constraints, strategies, and provided context from host application |
It seems like the issue might be with our setup, possibly related to our ingress/nginx/cloudflare setup. When I use the client to connect directly to an edge pod or service using |
Thank you @JonasBak, that's interesting. If you can, please keep us posted on your findings! |
I've been able to reproduce the issue locally using caddy and edge.
When using My best guess atm would be that it's somehow related to the headers |
Hello @JonasBak, thank you for these repro steps. We were able to reproduce and found that edge does not send back etag when content is gzipped. We have a PR on the way that should fix the issue |
Thanks @daveleek 🙌 I've not been able to test v13.1.0 as when i start the container it exits with the following message:
|
Thank you @JonasBak - we're looking into it and will get back to you when we have a fix |
Hey @JonasBak, we had an issue in our build which produced a broken docker image. We've uploaded a new 13.1.0 image over the broken one, which should fix this. Apologies for the trouble here! |
Nice, I've checked that the new version works in our setup, so I'll close the issue 🎉 |
Describe the bug
We have a toggle in three environments (dev, test, prod). The toggle is turned on (100%) in dev, and off (0%) in test and prod.
We use a token with access to the dev environment. When we configure the client to use unleash directly it works as expected and the toggle evaluates as
true
, but if we change the url to our unleash-edge instance, it evaluates asfalse
.I have recreated it with the "Synchronous startup" example. I thinks this is an issue with the dotnet client, as when i test the golang package with the same token and url using the SimpleUsage example here, it works as expected.
I have also tried calling
/api/client/features
on the unleash-edge instance directly with the same token, and it returns the flag with"enabled": true
.To Reproduce
Steps to reproduce the behavior:
unleash.IsEnabled
Expected behavior
I expect the client to return the same value as configured upstream and as returned by other clients.
Screenshots
Additional context
This is using version 3.3.3 of the client and v13.0.0 of unleash-edge.
The unleash-edge deployment basically looks like this:
This is tested both with and without setting a
SERVICE_ACCOUNT_TOKEN
environment variable.The text was updated successfully, but these errors were encountered: