Hello,

I am having problems opening a lucene index. The index has been created on
the same machine.  The size of index is 44G. Its a 64bit machine running
OpenSuse.

I have tried starting the java process with 1,2,3,4 GB of memory but still
get the same error. Any tips? The gc log shows that its running the GC even
though it has enough memory. But probably this error has something to do
with the memory mapped files using NIO. Anybody has seen anything like this
before? And if so, how did you solve it?
The output of "free -m"  before starting the process:

free -m
             total       used       free     shared    buffers     cached
Mem:         24158      20803       3354          0        635      19387
-/+ buffers/cache:        780      23378
Swap:         2204        164       2039


Below is the error.

Thanks in advance.

FM


$ java -d64 -server -Xmx15g -Xms15g -XX:+UseConcMarkSweepGC
-verbose:gc -XX:MaxPermSize=512m -XX:+HeapDumpOnOutOfMemoryError
-XX:HeapDumpPath=/home/frank/heap.dmp  -jar lukeall-3.5.0.jar
    [Full GC 207648K->28758K(15660544K), 0.1105290 secs]
    [Full GC 61479K->15416K(15660544K), 0.0654310 secs]
    [Full GC 69950K->15418K(15660544K), 0.0717170 secs]
    [Full GC 69952K->15418K(15660544K), 0.0661720 secs]
    java.io.IOException: Map failed
        at sun.nio.ch.FileChannelImpl.map(FileChannelImpl.java:849)
        at 
org.apache.lucene.store.MMapDirectory$MMapIndexInput.<init>(MMapDirectory.java:265)
        at 
org.apache.lucene.store.MMapDirectory.openInput(MMapDirectory.java:216)
        at 
org.apache.lucene.index.SegmentCoreReaders.<init>(SegmentCoreReaders.java:89)
        at org.apache.lucene.index.SegmentReader.get(SegmentReader.java:115)
        at org.apache.lucene.index.SegmentReader.get(SegmentReader.java:93)
        at 
org.apache.lucene.index.DirectoryReader.<init>(DirectoryReader.java:113)
        at 
org.apache.lucene.index.DirectoryReader$1.doBody(DirectoryReader.java:83)
        at 
org.apache.lucene.index.SegmentInfos$FindSegmentsFile.run(SegmentInfos.java:754)
        at org.apache.lucene.index.DirectoryReader.open(DirectoryReader.java:75)
        at org.apache.lucene.index.IndexReader.open(IndexReader.java:462)
        at org.apache.lucene.index.IndexReader.open(IndexReader.java:377)
        at org.getopt.luke.Luke.openIndex(Unknown Source)
        at org.getopt.luke.Luke.openOk(Unknown Source)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at thinlet.Thinlet.invokeImpl(Unknown Source)
        at thinlet.Thinlet.invoke(Unknown Source)
        at java.awt.Component.dispatchEventImpl(Component.java:4861)
    Caused by: java.lang.OutOfMemoryError: Map failed
        at sun.nio.ch.FileChannelImpl.map0(Native Method)
        at sun.nio.ch.FileChannelImpl.map(FileChannelImpl.java:846)
        ... 48 more

Reply via email to