Hibernate Search is a full-text search engine for your persistent domain model.
The Hibernate Search team is really proud to announce version 4.1. It has been a long road, but the final result includes many improvements and new features. As usual, a big thanks to our community and our contributors. What's in there for you?
We have added interceptors that let you control whether or not a given entity instance is indexed based on its state. This is very useful to implement things like:
- soft deletes
- indexing an entity only if in a given state, for example only index PUBLISHED blogs
Not only does it make your index smaller and thus faster but Hibernate Search is not triggered unless indexing is happening. Read more.
We have improved indexing of associations to embed only required information (we were a bit generous before).
In the same vein, you can now define which specific path of an association you want indexed (for further querying). Instead of indexing all of the associated object(s), Hibernate Search will only index the specific path(s). This makes for much faster indexing and smaller indexes. Read more.
We have improved the JGroups backend to use a single channel (roughly a single connection between nodes). This makes the bootstrap faster but more importantly simplifies greatly the configuration. Simpler is better as far as we are concerned :) Read more.
Hibernate Search is compatible with Hibernate ORM 4.1 and has been tested on JBoss AS 7.1. We have also upgraded the following main libraries: Lucene to 3.5, JGroups to 3 and Infinispan to 5.1.
We have improved support for modular environments - thanks for the constant nagging of Ales. We still have some work in this area so stay tuned.
If you are migrating from an earlier version, make sure to check our migration guide.