[infinispan-dev] Hibernate Search v 5.8 and plans for beyond!

Sanne Grinovero sanne at infinispan.org
Tue Jun 13 14:15:03 EDT 2017


TLDR: the new Search SPI requires using the "free form" types - but
don't expect to be able to take advantage of it just yet.

Hi all,

we just released Hibernate Search 5.8.0.Beta3 and it's meant to be our
last beta!

Progress and pace are looking very good.

The details of the release can be found on our blog [1] as usual, but
I'd like to call out on several changes relevant for Infinispan.

First and foremost, know that we'll be working on 6.0 as next big
thing; at that stage the API will see a significant redesign, focused
on making Lucene an optional implementation detail.

This makes this 5.8 significant for Infinispan as it's the last one
you'll have until you're ready to break API.

We've been working hard on addressing the needs of Infinispan, but in
several cases we had to make - and will still make - dramatic changes
in the SPI.

Some benefits relevant to you all:
 - the "ram" directory changed name as you suggested just recently
 - statistics now include index size (how large is it to store it)
 - a proper API to define Analyzers programmatically, you could now
add "out of the box" default definitions for Infinispan server.
 - the same for Normalizers (a new concept, see the blog [1])
 - tons of other improvements and bugfixes ;) such as:
   -- better performance by finally being able to use JDK8 features
   -- Java 9 compatibility
   -- a critical performance improvement in Spatial bridges
   -- better Spring and CDI improvements


# A new type system is coming !

And this is the main point.. however, it's not ready yet as it's a huge change.

The new type system - also named "free form" in all the meetings in
which we wished we had it - needs to start from the SPI and that's
partially included in this Beta.
(We postponed this for way too long by trying to match a good time to
break SPIs.. we'll just break it or it will never happen)

I will soon send a PR to update Infinispan to *work fine* with the
current SPI changes, but I will refrain from refactoring anything yet,
so that we can validate it all in small steps.

Still, many other existing SPI methods have been deprecated:

As soon as that's merged, I'll need help to migrate away from all
those deprecated methods as I simply can't make progress on the Search
side without starting to delete a good amount of these deprecated
methods.
So please know this: most of those deprecated methods will be removed
from Hibernate Search soon; we can of course keep some of them around
if we identify strong needs, but identifying these points can only be
done by getting started.

Please note that you can't yet plug-in a new type system to benefit
REST, Protobuf or other systems:
 - several components still make assumptions about this being backed
by annotated POJOs
 - there's no SPI yet to plugin alternative metadata

There's also no API to extract indexed values from an alternative
system, although I'm sure you could keep using the current hacks for
this to work out: it's not possible to get this in 5.8 so it will have
to be 6+.

Thanks,
Sanne

1 - http://in.relation.to/2017/06/13/hibernate-search-5-8-0-Beta3/


More information about the infinispan-dev mailing list