Skip to content
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

ES8 support - remove deprecated include_type_name parameter #483

Closed
wants to merge 1 commit into from

Conversation

jnorkus
Copy link

@jnorkus jnorkus commented Mar 17, 2022

In ES8 the include_type_name parameter is no longer supported and causes an error when creating an index.

https://www.elastic.co/guide/en/elasticsearch/reference/7.17/removal-of-types.html

@jnorkus jnorkus changed the title chore: es8 support - remove deprecated include_type_name parameter ES8 support - remove deprecated include_type_name parameter Mar 17, 2022
@missinglink
Copy link
Member

Thanks for the PR, we aren't officially supporting 8 just yet but we'll revisit this PR when we do.

The _type deprecation has been specially handled in our codebase for some time, it used to be required, then optional and now rejected, so I'll be happy to finally see the end of it 😄

@missinglink
Copy link
Member

missinglink commented Mar 17, 2022

related: pelias/model#123, #401

@jnorkus
Copy link
Author

jnorkus commented Mar 18, 2022

@missinglink Is there an issue/roadmap to support ES8? My colleague recently upgraded the cluster and it's not trivial to go back. Now I'm considering whether I should make necessary changes to support it. Anything else to be aware of?

@missinglink
Copy link
Member

Ugh no, TBH I didn't actually realize it was released a couple weeks ago.

There are loads of companies using Pelias and only three developers actively contributing to the maintenance, so things like this take some time.

It would be helpful if you could put together a list of the important differences and breaking changes for us to review.

@missinglink
Copy link
Member

Also worth mentioning that the license change makes some organizations a little uncomfortable.

I personally don't think it's a problem but it's a non-technical issue which will need to be smoothed over before we make 8 the default.

see: pelias/pelias#926

@missinglink
Copy link
Member

If omission of a _type is the only real blocker and it allows the code to interoperate between versions 7 and 8 then I'd advocate making that configurable or inferable so we don't need to make it a breaking change.

@jnorkus
Copy link
Author

jnorkus commented Mar 18, 2022

I managed to get index creation errors out of the way (there's more than just this parameter) but it seems that the importers are not compatible with this new index.

@missinglink
Copy link
Member

The importers all use pelias/model which still sets the _type (it's configurable), so we could change that so if you set it to something like false in the config then it is omitted.

see: pelias/model#123

I suspect this _type deprecation is the main problem with migration and suspect that us using an older deprecated version of the official elasticsearch J's client isn't helping matters.

@gnanakeethan
Copy link

gnanakeethan commented Dec 13, 2022

@missinglink I am running this against OpenSearch 2.3 and removing the line in pelias/model#123 resolves the issue.

https://github.com/pelias/model/pull/123/files#diff-0e52f948868e26de3c7ee5569835fe4b9ab6eef3ce338c1e8e80a65aa9561e56L149

@michaelkirk
Copy link
Contributor

Fixed in #490

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants