Hibernate Search是一个库,它通过自动索引实体,将Hibernate ORM与Apache Lucene或Elasticsearch集成,从而启用高级搜索功能:全文搜索、地理空间搜索、聚合等。更多信息请参阅hibernate.org上的Hibernate Search。

我们刚刚发布了Hibernate Search 6.0.0.Beta4。

此版本主要修复了Lucene后端的性能回归,并引入了一个在大量索引失败期间插入自定义行为的API。

开始使用Hibernate Search 6

如果您想直接深入了解全新的Hibernate Search 6,参考文档中的入门指南是一个很好的起点。

Hibernate Search 6 API与Search 5的API有很大不同。

有关迁移和我们将如何帮助您的更多信息,请参阅迁移指南

新增功能

修复了Lucene后端的性能回归

在6.0.0.Beta3版本中引入了一个性能回归,会减慢在大索引上执行搜索查询的速度。这个问题已在HSEARCH-3797中修复。

作为HSEARCH-3786的一部分,嵌套字段上的投影性能也得到了改进。

大量索引失败时的自定义行为

HSEARCH-3729开始,大量索引器允许通过新的MassIndexingFailureHandler接口自定义失败时的行为。

请参阅MassIndexer文档中的failureHandler参数。

版本升级

这次没有版本升级。

Hibernate Search 6需要ORM 5.4.4.Final或更高版本才能正常工作。更早的5.4.x版本将无法正常工作。

向后不兼容的API更改

  • HSEARCH-3629:搜索查询加载选项(缓存查找、获取大小等)现在通过一个接受lambda表达式的专用loading(…​)方法传递。有关更多信息,请参阅文档中的此部分。之前的语法仍然有效,但已被弃用,并将很快被删除。

  • HSEARCH-3461:整个API中将optimize索引操作重命名为mergeSegments。默认情况下,索引段在大量索引后不再合并。可以通过massIndexer.mergeSegments显式启用此功能。有关此操作的更多信息,请参阅文档中的此部分

文档

  • HSEARCH-3418:日期/时间字段类型的范围和分辨率限制现在已明确记录。有关Elasticsearch的更多信息,请参阅此处,有关Lucene的更多信息,请参阅此处

  • HSEARCH-3793:关于exists谓词的文档部分现在提到它可以用于对象字段。

其他改进和错误修复

  • HSEARCH-3802:Elasticsearch后端:query.fetchTotalHitCounts()在设置超时的情况下会始终失败,即使获取没有超时。此问题已修复。

等等。有关自上次发布以来的所有更改的完整列表,请参阅发布说明

如何获取此版本

所有详细信息均可在hibernate.org上的专用页面上找到并更新。

反馈、问题、想法?

要取得联系,请使用以下渠道


返回顶部