lucene-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Grant Ingersoll <>
Subject Re: modularization discussion
Date Wed, 27 Apr 2011 03:41:41 GMT

On Apr 26, 2011, at 10:07 PM, Robert Muir wrote:

> Hi,
> It appears there are some problems with modularization of the code,
> especially between lucene and solr, so I would like for us to have a
> discussion on this thread.


> The two sides/takes seem to be (with some example reasons):
> 1. pro: for example, modularization can expose features that were
> traditionally in solr to lucene users.

Some other Pros:
Easier to test individual pieces.  Easier to benchmark.  
More usage == more/better features/functionality for everyone.  
Easier for people to contribute to without having to know the full stack.  
I think most people agree that decoupled, reusable modules are a good thing in general as
an abstract concept, but, of course, specifics matter.

> 2. con: for example, modularization slows development of these
> features and they will evolve slower if they are in lucene.

I think this needs a bit more explanation.  AIUI, the primary cause for concern is that by
making something a module, you are taking a private, internal API of Solr's and now making
it a public API that must be maintained (and backwards maintained) which could slow down development
as one now needs to be concerned with more factors than you would if it were merely an implementation
detail in Solr.

Other Cons:
The concern was that Solr just becomes an uninteresting, empty shell that glues together modules.
(I don't agree, but wanted to present what I have heard)

> I think we need to somehow get a better understanding of both sides,
> specific examples of portions of the code would be helpful I think.
> Maybe then we can arrive at a compromise so that we aren't so
> frustrated about this issue.
> ---------------------------------------------------------------------
> To unsubscribe, e-mail:
> For additional commands, e-mail:

To unsubscribe, e-mail:
For additional commands, e-mail:

View raw message