Add random option - #7950
Conversation
| case UpstreamModeParallel: | ||
| conf.UpstreamMode = proxy.UpstreamModeParallel | ||
| case UpstreamModeRandom: | ||
| conf.UpstreamMode = proxy.UpstreamModeRandom |
There was a problem hiding this comment.
This won't build without go.mod modifications. You can set the dnsproxy version to the one from your branch, temporarily, via go get.
| - 'fastest' | ||
| - 'load_balancing' | ||
| - 'parallel' | ||
| - 'random' |
There was a problem hiding this comment.
Please update both CHANGELOG.md (that one uses KeepAChangelog standard) and openapi/CHANGELOG.md adding this change.
There was a problem hiding this comment.
From what I understand, more changes to the frontend are required?
|
I ported the companion feature onto current AdGuard Home The current-master port covers the whole setting path rather than only the backend constant:
The dnsproxy side uses equal weights with the existing without-replacement sampler, so random mode is uniform, failed upstreams are retried in random order, and fallback/statistics behavior is preserved. Load balancing remains RTT-weighted. Validation passed focused backend race tests, the full backend race suite, The remaining dependency gate is mechanical: AdGuard Home currently pins dnsproxy |
Updates #4756
PR required for dnsproxy
AdguardTeam/dnsproxy#467