Remove support for Elasticsearch 6.7 and prior
What concerns do we have for Self-managed customers if we removed support for Elasticsearch 6.x
When would gitlab.com move to Elasticsearch 8.0? UPDATE: Now Sept 2021 Release Date.
Steps to be compatible with 8.x
Good news per #247929 (comment 414788625) is that we'd already set up our mappings in a mostly compatible way for ES 8. Some small steps will be required to remove the redundant _type
we are sending though.
- Upgrade client libraries
- Remove this
_type
being sent in bulk requests: https://gitlab.com/gitlab-org/gitlab/-/blob/94ca7fd72f3ed89e85458135bb6f05675b4b7e9b/ee/lib/gitlab/elastic/bulk_indexer.rb#L78 - Remove this type being set in Go indexer https://gitlab.com/gitlab-org/gitlab-elasticsearch-indexer/-/blob/0ff0da3c0981f193929e6f82d3249b415fd5bf68/elastic/client.go#L192
- Remove this document type being set for searches https://gitlab.com/gitlab-org/gitlab/-/blob/94ca7fd72f3ed89e85458135bb6f05675b4b7e9b/ee/lib/elastic/class_proxy_util.rb#L15
- There are also references to
document_type
in https://gitlab.com/gitlab-org/gitlab/-/blob/94ca7fd72f3ed89e85458135bb6f05675b4b7e9b/ee/lib/gem_extensions/elasticsearch/model/indexing/instance_methods.rb but I have a feeling this is all dead code since we should only ever be indexing documents using our custom bulk indexing code. - Change
nGram
tongram
since it was renamed after7.6
and the old name is removed in 8 https://gitlab.com/gitlab-org/gitlab/-/blob/94ca7fd72f3ed89e85458135bb6f05675b4b7e9b/ee/lib/elastic/latest/config.rb#L84
Edited by John McGuire