Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Our IP filter isn't always able to resolve the host IP. When we encounter an error, we consider the host's IP as redundant, causing unnecessary churn at times. This PR doesn't really change that but whilst trying to figure out where the churn was coming from I found some stuff I wanted to improve or suggest.
I'm not sure whether we can really handle the errors better unfortunately... Currently we treat any error to resolve a host's IP as a redundant IP, this will definitely cause some churn since sometimes we run into
server misbehaving
errors. We now log them at least so we're more aware.edit: @ChrisSchinnerl I refactored it a little because I wanted to get rid of the
.Reset()
and find a reasonably good spot to prune the cache. You can now ask the contractor for anewIPFilter
that wraps a resolver type that has a cache.