ES 2.x support officially ended 4 months ago
(https://www.elastic.co/support/eol), so why still support ':' at all?
:) Additionally, 2.x isn't even supported at all on the last 2 Ubuntu
LTS releases (16.04 & 18.05).
Therefor, move everything to use '.' and provide a conversion/upgrade
script to change '.' to ':'?
On 2018-06-04 13:55, Ryan Merriman wrote:
We've been dealing with a reoccurring challenge in Metron. It is
common
for various fields to contain '.' characters for the purpose of making
them
more readable, namespacing, etc. At one point we only supported
Elasticsearch 2.3 which did not allow dots and forced us to use ':'
instead. This limitation does not exist in later versions of
Elasticsearch
or Solr.
Now we're in a situation where we need to allow a user to use either
one
because they may still be using ES 2.3 or have data with ':' characters
in
field names. We've attempted to make this configurable in a couple
different PRs:
https://github.com/apache/metron/pull/1022
https://github.com/apache/metron/pull/1010
https://github.com/apache/metron/pull/1038
The approaches taken in these are not consistent and fall short in
different ways. The first (METRON-1569 Allow user to change field name
conversion when indexing) only applies to indexing and not querying.
The
others only apply to a single field which does not scale well. Now we
have
an issue with another field in
https://issues.apache.org/jira/browse/METRON-1600. Rather than
continuing
with a patchwork of different fixes I want to attempt to design a
system-wide solution.
My first thought is to expand
https://github.com/apache/metron/pull/1022 to
apply globally. However this is not trivial and would require
significant
changes. It would also make https://github.com/apache/metron/pull/1010
obsolete and we might end up having to revert all of it.
Does anyone have any ideas or opinions? I am still researching
solutions
but would love some guidance from the community.