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

版本: 7.2-8.9

简要来说,当 Elasticsearch 尝试在一个不存在的索引上执行操作时,就会发生此错误。这可能是由于索引名称拼写错误,或者索引已被删除或尚未创建。要解决此问题,您可以检查索引名称是否存在拼写错误,确保在执行操作之前已创建索引,或者在应用程序中通过在使用索引之前检查其是否存在来处理此错误。如果索引应该存在,请调查其被删除或未创建的原因。

日志上下文 #

日志 “no indices exist” 类名是 IndexNameExpressionResolver.java 我们从 Elasticsearch 源代码中提取了以下内容,为那些寻求深入了解的人提供上下文:

    private static IndexNotFoundException notFoundException(String... indexExpressions) {
        final IndexNotFoundException infe;
        if (indexExpressions == null
        || indexExpressions.length == 0
        || (indexExpressions.length == 1 && Metadata.ALL.equals(indexExpressions[0]))) {
            infe = new IndexNotFoundException("no indices exist", Metadata.ALL);
            infe.setResources("index_or_alias", Metadata.ALL);
        } else if (indexExpressions.length == 1) {
            infe = new IndexNotFoundException(indexExpressions[0]);
            infe.setResources("index_or_alias", indexExpressions[0]);
        } else {