📣 极限科技诚招搜索运维工程师(Elasticsearch/Easysearch)- 全职/北京 👉 : 立即申请加入

版本: 6.8-8.9

简要来说,当您尝试恢复 Elasticsearch 快照时,如果快照源为空或未正确指定,就会发生此错误。这可能是由于配置错误或缺少快照造成的。要解决此问题,您可以验证快照源并确保其正确指定。同时,检查快照是否存在于仓库中。如果不存在,您需要创建新的快照。最后,确保 Elasticsearch 集群具有访问快照仓库的必要权限。

日志上下文 #

日志 “empty restore source” 的类名是 StoreRecovery.java。我们从 Elasticsearch 源代码中提取了以下内容,供那些寻求深入了解上下文的人参考:

logger.debug("restoring from {} ...", indexShard.recoveryState().getRecoverySource());
 indexShard.preRecovery(outerListener.delegateFailure((listener, ignored) -> {  final RecoveryState.Translog translogState = indexShard.recoveryState().getTranslog();
 if (restoreSource == null) {
 listener.onFailure(new IndexShardRestoreFailedException(shardId, "empty restore source"));
 return;
 }
 if (logger.isTraceEnabled()) {
 logger.trace("[{}] restoring shard [{}]", restoreSource.snapshot(), shardId);
 }