-
Notifications
You must be signed in to change notification settings - Fork 25.6k
[WIP] ES-11278 Add option for byte-based capacity for geoip cache #129207
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
Draft
PeteGillinElastic
wants to merge
28
commits into
elastic:main
Choose a base branch
from
PeteGillinElastic:ES-7713-geoip-cache-byte-capacity
base: main
Could not load branches
Branch not found: {{ refName }}
Loading
Could not load tags
Nothing to show
Loading
Are you sure you want to change the base?
Some commits from the old base branch may be removed from the timeline,
and old review comments may become outdated.
Draft
[WIP] ES-11278 Add option for byte-based capacity for geoip cache #129207
PeteGillinElastic
wants to merge
28
commits into
elastic:main
from
PeteGillinElastic:ES-7713-geoip-cache-byte-capacity
Conversation
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
3692033 to
6fb2ec6
Compare
This adds the option to have a geoip cache with a byte-based rather than a count-based capacity.
6fb2ec6 to
2ca311c
Compare
…nd `GeoIpCache.CacheableValue`. This will be needed to implement the `sizeInBytes()` method on `Result`. The code in `GeoIpTestUtils` has to change a little bit, because previously we had `Result<CityResponse>` and we don't own `CityResponse` so we can't make it implement the interface (and the same for `CountryResponse`). This change makes the test helper act a bit more like the production code, which is probably a good thing.
…o longer necessary due to the next commit
This version of the code does *not* affect the default behaviour. I'm not sure whether that would be considered a breaking change. (We could override the default in serverless, which I am sure we're free to do.) It would obviously be simple to flip the logic around so that we do change the default to, say, 1% of heap (like we do with enrich).
joegallo
reviewed
Jun 12, 2025
| */ | ||
| @Nullable | ||
| <RESPONSE> RESPONSE getResponse(String ipAddress, CheckedBiFunction<Reader, String, RESPONSE, Exception> responseProvider); | ||
| <RESPONSE extends GeoIpCache.CacheableValue> RESPONSE getResponse( |
Contributor
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Let's not have any changes to this file, and eat the subsequent consequences.
… them public, just so we can use them in integration tests. Make the tests use their own dummy city and country objects instead.
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
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.
This adds the option to have a geoip cache with a byte-based rather than a count-based capacity.