Extract Lucene serialization support as well as remote backends into a dedicated modules

Description

Given that the serialization is only needed for master/slave setups it makes sense make it an optional dependency. It makes it also clear that this is an exchangeable component.

, is this split still useful for your Lucene 4 migration work?

Activity

Show:

Hardy Ferentschik November 22, 2013 at 1:06 PM

Sanne Grinovero August 12, 2013 at 4:08 PM

You could take this to the extreme and argue that the remote backends could also go into their own modules. Not sure how useful that would be.

If it minimizes mandatory dependencies, I'd like that. But since it's a tradeoff, we don't need to make a rule of it nor need to do it in the scope of 4.4.

Sanne Grinovero August 12, 2013 at 4:07 PM

Note however that I would prefer to now change the jars in which the distribution is organized in 4.4. Our hope was to keep 4.4 extremely light and start working on 5.0 asap, so if this gets complex to do while keeping it in the same jar I'd postpone it to 5.0

Sanne Grinovero August 12, 2013 at 4:05 PM

yes. Technically if you don't need Avro even today I think you could exclude Jackson (and Avro).

Having such things in separate modules - at least at compile & build time - should make it easier for us to make sure that such dependencies are optional.

Guillaume Smet August 12, 2013 at 2:47 PM

Sanne,

Does it mean that this change would allow to remove the avro dependency from the "regular" (ie without master/slave) Hibernate Search?

Avro still uses Jackson 1.x and I wouldn't be against having lighter war files instead of having both Jackson 1.x and 2.x.

Fixed

Details

Assignee

Reporter

Fix versions

Affects versions

Priority

Created July 15, 2013 at 10:17 AM
Updated February 8, 2014 at 3:54 PM
Resolved December 21, 2013 at 7:56 AM

Flag notifications