Replies: 1 comment 7 replies
-
I think this might be a bug, shall I go ahead to create a bug report? |
Beta Was this translation helpful? Give feedback.
7 replies
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Uh oh!
There was an error while loading. Please reload this page.
-
I have setup my cache DNS A record TTL to 1 day, and created a tcp only backend.
My query (udp client) goes smoothly, first time query is sent to DNS server and received answer. Following queries are hitting cache successfully.
However, if I put the server down (the only server in the pool), while the cache still in valid state, then I see all next queries (from udp clicent) hit cache miss.
I dig into this issue and seems it is related to the cache key usage, it seems the cache key is including a bool value that indicating if the query is forwarded over UDP to backend. In my case, if downstream server is available, that flag is set to false (since tcp only is used for the selected backend). However, if server is down and no selected backend, then the flag is set to true (udp client). In this case the calculated cache key would be different, thus caused cache miss.
Any reason that we shall include such a flag into cache key calculation? Shouldn't the same cache be used no matter what transport is to be used for backend? Any suggestion to work around this?
Beta Was this translation helpful? Give feedback.
All reactions