[infinispan-dev] Lucene 5 is coming: pitfalls to consider

Sanne Grinovero sanne at infinispan.org
Thu Sep 10 11:43:35 EDT 2015


A wrap up on this subject.

Infinispan 8 is now based on Lucene 5.3 and all problems I previously
listed are dealt with in a mostly-backwards compatible way; this is
what you need to know.

## Null Markers
One exception is null-marker tokens: when applied to a NumericField
they now shall be represented by a number of the matching type of the
field.. no big deal.

## Sorting
The bigger issue was sorting, and its need for appropriate metadata,
so that we'd know at indexing time which fields would potentially be
the target for a sorting query.

Our solution in Hibernate Search 5.5 is to provide a @SortableField
annotation to allow users (and integrators like Infinispan Remote
Query) to mark fields for this purpose, but also we're falling back to
a slower sorting strategy in case at runtime a Query is run targeting
wich a field which was not appropriately annotated.

But while you might think "great, I don't have any change to do",
especially if you don't need the extra performance boost that
@SortableField would provide, make sure to start migrating
infrastructure to use this annotation as the fallback strategy won't
be maintained forever!

With the next version we'll - by default - refuse to use the fallback
and get a runtime exception, but still provide a configuration option
to allow it. That would be a great time to make sure all your needs
are covered by the new alternative metadata. After that we will get
rid of the fallback strategy.

Gunnar is going to publish a blog post with more details next week on
the Hibernate blog: http://in.relation.to/ , please watch that space.

## Index encoding
Hibernate Search is including the backwards compatible codecs.
Infinispan could decide to include them too, if you prefer.

## Dynamic Analyzer choices
We managed to keep this feature even if Lucene doesn't allow it, we'll
probably deprecate this like with sorting but I guess this doesn't
require any upfront work from Infinispan.

Thanks,
Sanne


More information about the infinispan-dev mailing list