lucene-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Wolf Siberski <>
Subject Re: NewIndexModifier - - - DeletingIndexWriter
Date Wed, 14 Feb 2007 14:23:57 GMT
robert engels schrieb:
> Lucene is not a word processor. It is a development library. I think an 
> understanding of any development library is essential to using it 
> properly. 

With respect to the specific change (see subject) under discussion,
I don't see how it affects Lucene design or performance negatively.
Anyway, this should be discussed by pointing out concrete weaknesses
rather than referring to 'development library' principles.

With respect to the general evolution of Lucene, IMHO we have
at least two types of users, with different needs:
a) Lucene experts which use it as low level building block
    within their highly customized information retrieval systems.
b) Lucene non-experts which use it as out-of-the-box component
    to just add full-text search to some application.
IMHO the API evolution should keep both types of users in mind,
instead of just focusing on type a) (as you seem to suggest).
Besides, Lucene users typically start in b), because it is
so easy to get it up and running, and then gradually move
towards a) (if and when required).
Therefore, it helps the Lucene community as a whole to remove
API obstacles for newcomers.

 > Once you have even a basic understanding of the Lucene design,
 > it is very clear as to why deletes are performed using the IndexReader.

While this is true, it seems a weak argument to me.
Try to envision the ideal IR engine API, and forget about
the current Lucene implementation. Wouldn't it then be a much
clearer separation of concerns to have one read-only retrieval
interface (IndexReader), and another one for all
index modifications (IndexModifier extends IndexReader)?

 > If you attempt to use Lucene without understanding its use proper and
 > design (there are many people on this list that think it is a database)
 > you will probably get most things wrong.

In my experience you can rather successfully use Lucene
without even thinking about what exactly it is :-)


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

View raw message