lucene-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Michael McCandless (JIRA)" <j...@apache.org>
Subject [jira] Commented: (LUCENE-301) Index Writer constructor flags unclear - and annoying in certain cases
Date Mon, 18 Dec 2006 22:07:24 GMT
    [ http://issues.apache.org/jira/browse/LUCENE-301?page=comments#action_12459479 ] 
            
Michael McCandless commented on LUCENE-301:
-------------------------------------------

I like Doug's solution "add a new constructor, IndexWriter(Directory, Analyzer) which, if
no such index exists, creates one" -- I think this makses sense.  I will commit this.

> Index Writer constructor flags unclear - and annoying in certain cases
> ----------------------------------------------------------------------
>
>                 Key: LUCENE-301
>                 URL: http://issues.apache.org/jira/browse/LUCENE-301
>             Project: Lucene - Java
>          Issue Type: Improvement
>          Components: Index
>    Affects Versions: 1.4
>         Environment: Operating System: other
> Platform: Other
>            Reporter: Dan Armbrust
>         Assigned To: Lucene Developers
>            Priority: Minor
>
> Wouldn't it make more sense if the constructor for the IndexWriter always
> created an index if it doesn't exist - and the boolean parameter should be
> "clear" (instead of "create")
> So instead of this (from javadoc):
> IndexWriter
> public IndexWriter(Directory d,
>                    Analyzer a,
>                    boolean create)
>             throws IOException
>     Constructs an IndexWriter for the index in d. Text will be analyzed with a.
> If create is true, then a new, empty index will be created in d, replacing the
> index already there, if any.
> Parameters:
>     d - the index directory
>     a - the analyzer to use
>     create - true to create the index or overwrite the existing one; false to
> append to the existing index 
> Throws:
>     IOException - if the directory cannot be read/written to, or if it does not
> exist, and create is false
> We would have this:
> IndexWriter
> public IndexWriter(Directory d,
>                    Analyzer a,
>                    boolean clear)
>             throws IOException
>     Constructs an IndexWriter for the index in d. Text will be analyzed with a.
> If clear is true, and a index exists at location d, then it will be erased, and
> a new, empty index will be created in d.
> Parameters:
>     d - the index directory
>     a - the analyzer to use
>     clear - true to overwrite the existing one; false to append to the existing
> index 
> Throws:
>     IOException - if the directory cannot be read/written to, or if it does not
> exist.
> Its current behavior is kind of annoying, because I have an app that should
> never clear an existing index, it should always append.  So I want create set to
> false.  But when I am starting a brand new index, then I have to change the
> create flag to keep it from throwing an exception...  I guess for now I will
> have to write code to check if a index actually has content yet, and if it
> doesn't, change the flag on the fly.

-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: http://issues.apache.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

---------------------------------------------------------------------
To unsubscribe, e-mail: java-dev-unsubscribe@lucene.apache.org
For additional commands, e-mail: java-dev-help@lucene.apache.org


Mime
View raw message