The rules of thumb when migrating your application between Elasticsearch versions are as follows:
- When migrating between minor versions (for example, 7.x to 7.y), we can upgrade one node at a time.
- Migrating between two subsequent major versions (for example, 6.x to 7.x) requires a full cluster restart.
- Migrating between two non-subsequent major versions (for example, 5.x to 7.x) requires reindexing documents from Elasticsearch 5.x to Elasticsearch 6.x. Then, you follow the procedures for migrating between two subsequent major versions.
A reindexing API can be used to convert multi-type indices to single-type indices during migration. See the example in Chapter 3, Document APIs.
Elasticsearch 7.0 will not start on a node with documents indexed prior to 6.0.