Briefly, this error occurs when Elasticsearch is unable to initiate the process of cloning a snapshot, which could be due to insufficient permissions, lack of disk space, or network connectivity issues. To resolve this, you can check and adjust the user permissions, ensure there’s enough disk space, and verify network connectivity. Additionally, check the snapshot repository’s configuration and the health of the cluster. If the snapshot is corrupted, consider creating a new one.
This guide will help you check for common problems that cause the log ” Failed to start snapshot clone [{}] ” to appear. To understand the issues related to this log, read the explanation below about the following Elasticsearch concepts: snapshot.
Log Context
Log “Failed to start snapshot clone [{}]” classname is SnapshotsService.java.
We extracted the following from Elasticsearch source code for those seeking an in-depth context :
final Executor executor = threadPool.executor(ThreadPool.Names.SNAPSHOT); // Exception handler for IO exceptions with loading index and repo metadata final ConsumeronFailure = e -> { endingSnapshots.add(targetSnapshot); initializingClones.remove(targetSnapshot); logger.info(() -> new ParameterizedMessage("Failed to start snapshot clone [{}]"; cloneEntry); e); removeFailedSnapshotFromClusterState(targetSnapshot; e; null); }; // 1. step; load SnapshotInfo to make sure that source snapshot was successful for the indices we want to clone // TODO: we could skip this step for snapshots with state SUCCESS