With the removal of doc types, must I reindex all the indices that use a named type?

I am getting conflicting instructions regarding the removal of doc types. If my indices only having one doc type (but not named _doc), do I have to reindex all the indices before I upgrade, or will it upgrade and simply ignore the type?

I was getting some depreciation warning before, but if I look at the 7.0 Upgrade Assistant right now, it is saying that my cluster has no issue. I haven’t upgraded to 7.x mostly because of this so I want to make sure that I can do this before going further. If I had to reindex all the indices from a named doc type to_doc, it is a rather involved process so I would like to avoid that unless absolutely necessary.

Please advice. Thanks!

I believe indices created in Elasticsearch 6.x with a different type name will continue to work, but if you are creating new indices, e.g. time-based ones, these will need to have the standard type going forward. You may therefore need to update index templates and ingest config.

What happens if:

  • the index will continue to get new documents? Will that become an issue in 7.x and 8.x when the type is completely removed? What I have tried to do is indexing new documents with _doc but then ES complains that I have two doc types in the index.

Indices created in version 6.x will need to be reindexed and have the type adjusted before moving to 8.x, but it should work in 7.x. If you are using time-based indices it may make sense to add the major version number to the index name, e.g. test-7-* for indices created under version 7.x. This allows you to stop writing to indices (assumes you are not updating) created under older versions.

1 Like

I see. In other words, I will have to do it regardless if I wanted to move to 8.x. Thanks for your reply. This is extremely helpful!

This topic was automatically closed 28 days after the last reply. New replies are no longer allowed.