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.29k stars 739 forks source link

Opengrok UI shows incorrect results #4585

Closed chkp-baselz closed 3 weeks ago

chkp-baselz commented 4 weeks ago

I'm using

I'm getting incorrect results in Opengrok UI, let's say for example in a specific file I have 3 rehearsals of a specific string, it shows me four rehearsals, the forth one is incorrect (the original line does not contains the string, seems it think like it's a duplication of the first result) and it's in incorrect line order for example image As you can see line 2237 does not contains the string image

Under /opengrok/data folder I see that the file has "org_opengrok" extension, I tried to delete the file and touch the src file so it'll be reindex, but it keeps failing and re generating the file with "org_opengrok" extension image

I use this command to index java -Djavax.net.debug=all -Djavax.net.ssl.trustStore=/usr/share/apache-tomcat-9.0.40/conf/keystore/opengrok.jks -Djavax.net.ssl.trustStoreType=jks -Djavax.net.ssl.keyStorePassword= -Djava.util.logging.config.file=/opengrok/etc/logging.properties -jar /opengrok/dist/lib/opengrok.jar -c /usr/local/bin/ctags -s /opengrok/src -d /opengrok/data -H -P -S -G -W /opengrok/etc/configuration.xml -U https://opengrok.com:8443/source/

special output in indexing command for this project

10:58:01 WARNING: Could not notify the webapp that project jaguar_main:indexed=true,history=true was indexed
jakarta.ws.rs.ProcessingException: Cannot find trust store file "/usr/share/apache-tomcat-9.0.40/conf/keystore/opengrok.jks".
        at org.glassfish.jersey.client.ClientRuntime.invoke(ClientRuntime.java:309)
        at org.glassfish.jersey.client.JerseyInvocation.lambda$invoke$0(JerseyInvocation.java:662)
        at org.glassfish.jersey.client.JerseyInvocation.call(JerseyInvocation.java:697)
        at org.glassfish.jersey.client.JerseyInvocation.lambda$runInScope$3(JerseyInvocation.java:691)
        at org.glassfish.jersey.internal.Errors.process(Errors.java:292)
        at org.glassfish.jersey.internal.Errors.process(Errors.java:274)
        at org.glassfish.jersey.internal.Errors.process(Errors.java:205)
        at org.glassfish.jersey.process.internal.RequestScope.runInScope(RequestScope.java:390)
        at org.glassfish.jersey.client.JerseyInvocation.runInScope(JerseyInvocation.java:691)
        at org.glassfish.jersey.client.JerseyInvocation.invoke(JerseyInvocation.java:661)
        at org.glassfish.jersey.client.JerseyInvocation$Builder.method(JerseyInvocation.java:439)
        at org.glassfish.jersey.client.JerseyInvocation$Builder.put(JerseyInvocation.java:328)
        at org.opengrok.indexer.index.IndexDatabase.markProjectIndexed(IndexDatabase.java:403)
        at org.opengrok.indexer.index.IndexDatabase.update(IndexDatabase.java:681)
        at org.opengrok.indexer.index.IndexDatabase.lambda$updateAll$1(IndexDatabase.java:247)
        at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515)
        at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264)
        at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128)
        at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628)
        at java.base/java.lang.Thread.run(Thread.java:829)
Caused by: java.lang.IllegalStateException: Cannot find trust store file "/usr/share/apache-tomcat-9.0.40/conf/keystore/opengrok.jks".
        at org.glassfish.jersey.SslConfigurator.createSSLContext(SslConfigurator.java:729)
        at org.glassfish.jersey.SslConfigurator.getDefaultContext(SslConfigurator.java:278)
        at org.glassfish.jersey.SslConfigurator.getDefaultContext(SslConfigurator.java:263)
        at org.glassfish.jersey.client.JerseyClient$1.getDefaultSslContext(JerseyClient.java:62)
        at org.glassfish.jersey.client.JerseyClient$2.get(JerseyClient.java:202)
        at org.glassfish.jersey.client.JerseyClient$2.get(JerseyClient.java:199)
        at org.glassfish.jersey.internal.util.collection.Values$LazyUnsafeValueImpl.get(Values.java:402)
        at org.glassfish.jersey.client.JerseyClient.getSslContext(JerseyClient.java:378)
        at org.glassfish.jersey.client.internal.HttpUrlConnector$1.get(HttpUrlConnector.java:134)
        at org.glassfish.jersey.client.internal.HttpUrlConnector$1.get(HttpUrlConnector.java:131)
        at org.glassfish.jersey.internal.util.collection.Values$LazyValueImpl.get(Values.java:317)
        at org.glassfish.jersey.client.internal.HttpUrlConnector.secureConnection(HttpUrlConnector.java:311)
        at org.glassfish.jersey.client.internal.HttpUrlConnector._apply(HttpUrlConnector.java:335)
        at org.glassfish.jersey.client.internal.HttpUrlConnector.apply(HttpUrlConnector.java:266)
        at org.glassfish.jersey.client.ClientRuntime.invoke(ClientRuntime.java:297)
        ... 19 more
Caused by: java.io.FileNotFoundException: /usr/share/apache-tomcat-9.0.40/conf/keystore/opengrok.jks (Permission denied)
        at java.base/java.io.FileInputStream.open0(Native Method)
        at java.base/java.io.FileInputStream.open(FileInputStream.java:219)
        at java.base/java.io.FileInputStream.<init>(FileInputStream.java:157)
        at java.base/java.io.FileInputStream.<init>(FileInputStream.java:112)
        at org.glassfish.jersey.SslConfigurator.createSSLContext(SslConfigurator.java:713)
        ... 33 more

13:01:31 SEVERE: Problem updating index database in directory /opengrok/data/index/jaguar_main:
java.lang.IllegalStateException: cannot close: prepareCommit was already called with no corresponding call to commit
        at org.apache.lucene.index.IndexWriter.shutdown(IndexWriter.java:1225)
        at org.apache.lucene.index.IndexWriter.close(IndexWriter.java:1278)
        at org.opengrok.indexer.index.IndexDatabase.update(IndexDatabase.java:702)
        at org.opengrok.indexer.index.IndexDatabase.lambda$updateAll$1(IndexDatabase.java:247)
        at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515)
        at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264)
        at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128)
        at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628)
        at java.base/java.lang.Thread.run(Thread.java:829)