Hibernate Search is a community driven project and as such the roadmap constantly evolves to reflect the users needs.
You can find a finer grained roadmap in our issue tracker but this page is a good and concise view of where we are going.
Dates are generally omitted: milestones are released regularly, the Final release is tagged when it’s considered stable.
- Hibernate ORM 5.3, JPA 2.2
Hibernate ORM 5.3 is coming and will feature full support for
JPA 2.2. This will require us to update several APIs.
- WildFly Swarm
WildFly Swarm is the new fine-grained modular version of WildFly aiming at microservices. We should make sure Hibernate Search is integrated properly and the usage is documented. Essentially continue the work started with feature packs in
- Elasticsearch performance
We applied several performance improvements in previous versions, but there are some more interesting ideas to explore.
Compatible with Hibernate ORM 6, Apache Lucene 7, Elasticsearch 6.
- API Refresh
A significant API refresh is planned to better abstract from the Lucene API so that alternative backends such as Elasticsearch can be used without having Lucene on your classpath. This will also benefit Lucene users, as the abstraction should allow us to automatically apply more optimisations without the user needing to be a Lucene expert.
- Upgrade to Apache Lucene 7
To provide the full power of some of the new features in Apache Lucene 7, some API changes are needed. This includes some API improvements which could have been useful since the upgrade to Lucene 5; since we only apply breaking API changes in major releases these had to wait.
- Upgrade to Elasticsearch 6
Elasticsearch 6 does not provide the ability to store multiple types in one index anymore. Hibernate Search 6 will address this, possibly by forcing to use different indexes for different types. Once this is done, we will add support for Elasticsearch 6.
- Free-form indexing
We’re planning to decouple the metadata definition from annotated java classes, to allow better indexing of other more flexible sources; for example to make it easier to index data structured in the JSON format, or other formats whose schema is not known at compile time.
- Join operations
Expose Lucene’s index-time and query-time join capabilities.