今天我们发布了两个新的 Hibernate Search 版本:5.6.0.Beta4 和 5.7.0.Beta1!
版本 5.6.0.Beta4 为我们的实验性 Elasticsearch 集成带来了最新的错误修复和之前缺失的功能 (请参阅此处)。这是与 Hibernate ORM 版本 5.0.x 和 5.1.x 一起使用的版本。
版本 5.7.0.Beta1 带来了与 5.6.0.Beta1 完全相同的更改,但基于 5.7.0.Alpha1 中引入的与 Hibernate ORM 版本 5.2.x 的兼容性。
新增功能?
-
HSEARCH-402:为 Lucene 索引服务添加了新的
async
读取策略,当您对查询在过时的索引上运行感到满意时,将带来性能提升(过时的程度是可配置的)。 -
HSEARCH-2260:为 Elasticsearch 添加了新的
VALIDATE
索引模式管理策略,允许您在启动时自动检查您的 Hibernate Search 映射是否与 Elasticsearch 映射一致。 -
在 Elasticsearch 集成中解决了
@IndexedEmbedded
的问题:现在应该一切正常工作,只有一个值得注意的例外是@IndexedEmbedded.indexNullAs
(请勿与@Field.indexNullAs
混淆)。 -
HSEARCH-2235:现在您可以配置 Hibernate Search 向 Elasticsearch 服务器发送轮询请求,从而实现负载均衡。目前尚不支持故障转移,但 我们将着手解决此问题。
-
HSEARCH-2360:Elasticsearch 投影现在使用源过滤,大大减少了检索结果时的带宽需求。
-
我们现在测试了与 2.4.2 版本的 Elasticsearch 集成,该版本修复了影响 Hibernate Search 的 日期格式问题。我们强烈建议将您的 2.4.x 实例更新到 2.4.x 系列的最新版本。
-
……以及更多。完整的变更日志可以在 我们的 JIRA 实例 或 我们的 GitHub 仓库 上找到。
5.6.0 版本何时发布?
最近我们一直在进行 Elasticsearch 集成的打磨工作,但我们可以看到隧道的尽头:待办事项清单正在变得越来越短。Hibernate Search 5.6.0 的第一个候选版本将在下周末发布。
因此,如果您还没有测试 5.6 版本,现在是时候了!如果您发现任何错误,请在我们的 JIRA 实例 上报告。
关于 Elasticsearch 5 的支持如何?
请注意,我们目前不支持 Elasticsearch 5.x。主要原因是我们需要支持 2.x 系列,这将带来一些不兼容的更改,如果我们要继续支持 2.x 系列,则需要相当多的工作。我们也不想再推迟 Hibernate Search 5.6.0 的发布。
我们的计划是发布支持 Elasticsearch 2.x 的 5.6.0 版本,并在 Hibernate Search 6.0 或 5.8 的早期版本中添加 Elasticsearch 5 的支持。您可以参考 HSEARCH-2434 来跟踪 Elasticsearch 5.0 支持的状态。
如何获取这些版本
所有版本都可以在 Hibernate Search 的 网站上 获取。
理想情况下,使用工具从 Maven central 获取它;这些是坐标
<dependency>
<groupId>org.hibernate</groupId>
<artifactId>hibernate-search-orm</artifactId>
<version>5.6.0.Beta4</version>
</dependency>
或者,对于 Hibernate Search 5.7
<dependency>
<groupId>org.hibernate</groupId>
<artifactId>hibernate-search-orm</artifactId>
<version>5.7.0.Beta1</version>
</dependency>
要使用实验性的 Elasticsearch 集成,您还需要
<dependency>
<groupId>org.hibernate</groupId>
<artifactId>hibernate-search-elasticsearch</artifactId>
<version>5.6.0.Beta4</version>
</dependency>
(将版本更改为 5.7.0.Beta1
以在 Hibernate Search 5.7 中测试 Elasticsearch 集成)
可以从 Sourceforge 下载。