lucene-java-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Peter Carlson <>
Subject Re: SearchBean - search on index with deleted documents
Date Mon, 29 Jul 2002 13:54:52 GMT
Thanks for the feedback.

Please direct all Lucene related questions to the Lucene User's List. You'll
get more people to help and hopefully help other too.

I think if you change the SortedField.addField method to

    /** adds the data from the index into a string array
    private void addSortedField(String fieldName, IndexReader ir) throws
        int numDocs = ir.numDocs();
        fieldValues = new String[numDocs];
        for (int i=0; i<numDocs; i++) {
            if(ir.isDeleted(i) == false){
                fieldValues[i] = ir.document(i).get(fieldName);
            } else {
                fieldValues[i] = "";

I think this will work. I'm not yet sure if this is the best way to go, but
I think it will get around the bug. It removes any field values you are
sorting on in the field so you should never run into a problem.

I don't have an unoptimized index at hand, and unfortunately no time to
test. Please let me know if this works.



On 7/29/02 7:23 AM, "" <> wrote:

> Hi Peter,
> I've found the SearchBean very useful for our project, but seem to have run
> into problems when it comes to searching an index which has had documents
> removed using the IndexReader.delete method (without calling the
> IndexWriter.optimize method).
> In particular the error returned is:
> "java.lang.IllegalArgumentException: attempt to access a deleted document"
> This occurs in the SortedField.addField method and I believe has to do with
> the fact that IndexReader returns all documents - whether deleted or not.
> When the index is optimized the deleted documents are actually removed and
> the problem does not occur (ie if the *.del file is removed from the index).
> Any thoughts on a work-around for this?
> Apologies if my understanding is flawed here - I'm new to this, and thanks
> very much for your help.

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

View raw message