lucene-java-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Otis Gospodnetic <otis_gospodne...@yahoo.com>
Subject Re: Weird NPE in RAMInputStream when merging indices
Date Wed, 22 Oct 2003 16:06:56 GMT
Hm, beat me.
The code in question seems to be:

  public RAMInputStream(RAMFile f) {
    file = f;
    length = file.length;
  }

...which is called from:

  /** Returns a stream reading an existing file. */
  public final InputStream openFile(String name) {
    RAMFile file = (RAMFile)files.get(name);
    return new RAMInputStream(file);
  }

Since 'files' is a Hashtable, neither the key nor the value (file) can
be null, even though the NPE in RAMInputStream constructor implies that
file was null.

Otis


--- petite_abeille <petite_abeille@mac.com> wrote:
> Hello,
> 
> What could cause such weird exception?
> 
> RAMInputStream.<init>: java.lang.NullPointerException
> java.lang.NullPointerException
> at
> org.apache.lucene.store.RAMInputStream.<init>(RAMDirectory.java:217)
> at
> org.apache.lucene.store.RAMDirectory.openFile(RAMDirectory.java:182)
> at org.apache.lucene.index.FieldInfos.<init>(FieldInfos.java:78)
> at
> org.apache.lucene.index.SegmentReader.<init>(SegmentReader.java:116)
> at 
>
org.apache.lucene.index.IndexWriter.mergeSegments(IndexWriter.java:378)
> at org.apache.lucene.index.IndexWriter.optimize(IndexWriter.java:298)
> at
> org.apache.lucene.index.IndexWriter.addIndexes(IndexWriter.java:313)
> 
> I don't know if this is a one off as I cannot reproduce this problem 
> nor I have seen this before, but I thought I could as well ask.
> 
> This is triggered by merging a RAMDirectory into a FSDirectory.
> Looking 
> at the RAMDirectory source code, this exception seems to indicate
> that 
> the file argument to the RAMInputStream constructor is null... how 
> could that ever happen?
> 
> Here is the code which triggers this weirdness:
> 
>      this.writer().addIndexes( new Directory[] { aRamDirectory } );
> 
> The RAM writer is checked before invoking this code to make sure
> there 
> is some content in the RAM directory:
> 
>      aRamWriter.docCount() > 0
> 
> This has been working very reliably since the dawn of time, so I'm a 
> little bit at loss as how to diagnose this weird exception...
> 
> Any ideas?
> 
> Thanks.
> 
> Cheers,
> 
> PA.
> 
> 
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: lucene-user-unsubscribe@jakarta.apache.org
> For additional commands, e-mail: lucene-user-help@jakarta.apache.org
> 


__________________________________
Do you Yahoo!?
The New Yahoo! Shopping - with improved product search
http://shopping.yahoo.com

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


Mime
View raw message