Skip to content

indexer fails with 'Too many open files' since 1.1-rc20 #1993

Closed
@vladak

Description

@vladak

Since 1.1-rc20 the indexing of "prepped" (i.e. unpacked with patches applied) version of https://github.com/oracle/solaris-userland gives me:

2018-01-29 09:03:01.638+0100 SEVERE t37 Indexer$1.run: An error occured while updating index
java.nio.file.FileSystemException: /opengrok/data/index/userland-default-prepped: Too many open files
        at sun.nio.fs.UnixException.translateToIOException(UnixException.java:91)
        at sun.nio.fs.UnixException.rethrowAsIOException(UnixException.java:102)
        at sun.nio.fs.UnixException.rethrowAsIOException(UnixException.java:107)
        at sun.nio.fs.UnixFileSystemProvider.newDirectoryStream(UnixFileSystemProvider.java:427)
        at java.nio.file.Files.newDirectoryStream(Files.java:457)
        at org.apache.lucene.store.FSDirectory.listAll(FSDirectory.java:215)
        at org.apache.lucene.store.FSDirectory.listAll(FSDirectory.java:234)
        at org.apache.lucene.store.FilterDirectory.listAll(FilterDirectory.java:57)
        at org.apache.lucene.index.IndexFileDeleter.refresh(IndexFileDeleter.java:429)
        at org.apache.lucene.index.IndexWriter.rollbackInternalNoCommit(IndexWriter.java:2249)
        at org.apache.lucene.index.IndexWriter.rollbackInternal(IndexWriter.java:2193)
        at org.apache.lucene.index.IndexWriter.shutdown(IndexWriter.java:1129)
        at org.apache.lucene.index.IndexWriter.close(IndexWriter.java:1171)
        at org.opensolaris.opengrok.index.IndexDatabase.update(IndexDatabase.java:487)
        at org.opensolaris.opengrok.index.Indexer$1.run(Indexer.java:1046)
        at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)
        at java.util.concurrent.FutureTask.run(FutureTask.java:266)
        at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
        at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
        at java.lang.Thread.run(Thread.java:748)

Either it became more demanding (I think the default per process limit is 256 fd's) or there is file descriptor leak.

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions