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
Adding a GeoIP2 database in $ES_CONFIG/ingest-geoip results in node not starting if using default filename #64203
Comments
Pinging @elastic/es-core-features (:Core/Features/Ingest) |
Related to #36949, which added the |
I want to clarify that this is deliberate, because those are not custom databases. We ensure that the built-in databases are loaded from the ingest-geoip module path, and custom databases are treated as configuration files from the config directory. One reason we did this was to ensure that users didn't have stale database files sitting around from the time when these database files were unpackaged from the ingest-geoip plugin into the configuration directory, but we transitioned to bundling them as part of the distribution when we made ingest-geoip a module instead of a plugin. This check ensures we don't load stale databases, but also that we aren't leniently and silently ignore them, which would be surprising to a user. |
Thanks for the background @jasontedor. Still not sure I understand what the correct approach would be then? Are you saying this should only be used for custom databases but not to "update" to a more recent MaxMind DB? If we fail this on purpose for the reasons you outlined, then I think we should mention it in the docs, because currently they suggest that |
@jakommo I think a user could "update" these databases by treating them as custom, namely giving them a name that distinguishes them from the built-in databases such as
Note that the extension must be I opened #64340. |
Elasticsearch version (
bin/elasticsearch --version
): Version: 7.9.3, Build: default/tar/c4138e51121ef06a6404866cddc601906fe5c868/2020-10-16T10:36:16.141335Z, JVM: 15Plugins installed: []
JVM version (
java -version
): BundledOS version (
uname -a
if on a Unix-like system): Linux es-jre2 5.9.1-arch1-1 #1 SMP PREEMPT Sat, 17 Oct 2020 13:30:37 +0000 x86_64 GNU/LinuxDescription of the problem including expected versus actual behavior:
When adding a GeoIP DB file with the same name as the ones that are shipped by default, startup fails with:
According to the docs, the custom GeoIP DB should be placed in
$ES_CONFIG/ingest-geoip
, but there is no mention that they can not have the same name as the default files (which are also the default names if one download updated files from maxmind).I think this is related to the breaking change discussed in #39495.
Not sure what the correct approach to this is. Either we should update the docs to reflect that it can not have the same file name or we should disable the check.
Steps to reproduce:
After renaming the file it starts up fine and I can also referance the new file in a pipeline.
Note: I used the file from the module here to simplify the repro, but also tried with a downloaded GeoIP db file.
Provide logs (if relevant):
The text was updated successfully, but these errors were encountered: