0

我有一个Spring Boot 2.4.2集成的应用程序Hibernate Search 6.0.2.Final

使用标准时elasticsearch,在持久化新实体时一切正常(读/写)。myindex-000001索引也会根据默认simple索引策略按预期创建。

但是,当我将后端切换到opendistro(最新)时,我只看到由名称创建的单个索引myindex-write(与预期不同myindex-000001)。写入操作按预期工作(由于后缀-write),但是读取操作失败并出现错误:

root_cause": [
      {
        "type": "index_not_found_exception",
        "reason": "no such index [myindex-read]",
        "resource.type": "index_or_alias",
        "resource.id": "myindex-read",
        "index_uuid": "_na_",
        "index": "myindex-read"
      }
    ]

GET /_cat/aliasesopendistro表明索引没有别名。

解决此问题的最佳方法是什么?此处no-alias显示的策略?使用的缺点是缺乏像重新索引这样的蓝绿部署。索引策略是解决这个问题的最佳方法吗?no-aliascustom

4

1 回答 1

1

以上所有问题都是因为我设置hibernate.search.schema_management.strategynone. 需要手动创建索引,如此处的文档中所述

于 2021-04-04T17:07:09.093 回答