Upgrading from 6.5.4 to 7.0.1 : problem with an old index


While upgrading from version 6.5.4 to 7.0.1, I forgot I had a very old index created with elastic 5.6. As I am not in production, I haven't snapshots ....

When I launched version 7.0.1 : I had first an error because of this old index. So I changed my elastic configuration to make it only listening on localhost and avoid bootstrap checks.
With this configuration, this old index only generates warning.

In order to clean every thing and go back listening on the actual IP address of my node, I wanted to go back to old version 6.5.4 in order to remove the old index.

However, I couldn't do it : When running 6.5.4 it now tells me that it can't read the global state of my cluster : apparently there's a new field in 7.0 that prevents older versions to read the global state file : <ES_HOME>/data/nodes/0/_state/global-1819.st

Of course, when I'm using version 7.0 an XGET on the old index tells me that this index is not found.

Is there a way to remove this index using version 7.0 ?
In order for me to go back listening on all IP address.

Thank you for your help.

You can't downgrade a version for sure.
Best thing to do if possible would be to delete the index using the API but here you can't do that I believe.

Unless someone has another idea, I'd try to locate the index id, using GET /_cat/indices?v and compare it with the indices listed in <ES_HOME>/data/nodes/0/indices.

Once you know which is the failing index, you can move this dir away from <ES_HOME>/data/nodes/0/indices to for example /tmp.

And start the node again... May be that could work...

Thanks David.
I'll try this. Hope it won't break anything :-/

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