oracle / opengrok

OpenGrok is a fast and usable source code search and cross reference engine, written in Java
http://oracle.github.io/opengrok/
Other
4.36k stars 747 forks source link

Indexer hangs after IndexDatabase.optimize: done #3070

Open pbozhkov opened 4 years ago

pbozhkov commented 4 years ago

Describe the bug Indexer hangs. It stayed two days, and the last entry in the log is INFO IndexDatabase.optimize: done

This happens only on one container, the other container with smaller /src is indexing, and in the log we have:

2020-03-12 12:25:23.834+0000 INFO t1312 IndexDatabase.optimize: done 2020-03-12 12:25:23.957+0000 INFO t1 Statistics.report: Done indexing data of all repositories (took 0:37:39) 2020-03-12 12:25:23.957+0000 INFO t1 Indexer.sendToConfigHost: Sending configuration to: localhost:2424 2020-03-12 12:25:26.301+0000 INFO t1 Indexer.sendToConfigHost: Configuration update routine done, check log output for errors. 2020-03-12 12:25:26.301+0000 INFO t1 Statistics.report: Total time: 1:03:41 2020-03-12 12:25:26.447+0000 INFO t1 Statistics.report: Final Memory: 82M/529M

Both containers are the same: Apache Tomcat 8.5.41 OpenGrok 1.0.13 openjdk 1.8.0_212

Containers are running on: OS CentOS 7.7 Docker version 19.03.7

To Reproduce I've started the container again, and it hangs after the same log entry.

vladak commented 4 years ago

1.0 is pretty old. Could you try with the latest version first ?

pbozhkov commented 4 years ago

It appears that a 35M file: $ file LargeFile.tcml: $ LargeFile.tcml: XML 1.0 document, ASCII text, with very long lines caused the indexing hang issue From the logs: after IndexDatabase.optimize: done before Statistics.report: Done indexing data of all repositories for this very old OpenGrok version (1.0)

I didn't test it with the latest versions yet. Thank you.