Cannot close indices that are being snapshotted – How to solve this Elasticsearch exception

Opster Team

August-23, Version: 6.8-7.15

Briefly, this error occurs when you attempt to close an index in Elasticsearch that is currently being snapshotted. The snapshot process needs the index to be open to successfully complete. To resolve this issue, you can either wait for the snapshot process to complete before closing the index, or you can manually stop the snapshot process if it’s no longer needed. Be aware that stopping the snapshot process may result in an incomplete snapshot.

This guide will help you check for common problems that cause the log ” Cannot close indices that are being snapshotted: ” to appear. To understand the issues related to this log, read the explanation below about the following Elasticsearch concepts: metadata, cluster, indices.

Log Context

Log “Cannot close indices that are being snapshotted:” class name is MetadataIndexStateService.java. We extracted the following from Elasticsearch source code for those seeking an in-depth context :

 }  // Check if index closing conflicts with any running snapshots
 Set snapshottingIndices = SnapshotsService.snapshottingIndices(currentState; indicesToClose);
 if (snapshottingIndices.isEmpty() == false) {
 throw new SnapshotInProgressException("Cannot close indices that are being snapshotted: " + snapshottingIndices +
 ". Try again after snapshot finishes or cancel the currently running snapshot.");
 }  final ClusterBlocks.Builder blocks = ClusterBlocks.builder().blocks(currentState.blocks());
 final RoutingTable.Builder routingTable = RoutingTable.builder(currentState.routingTable());

 

How helpful was this guide?

We are sorry that this post was not useful for you!

Let us improve this post!

Tell us how we can improve this post?