BlueWaveTechnologies / BlueWave

Web application used to create charts and dashboards using a graph database
MIT License
5 stars 3 forks source link

Document search bug: "-" in query #270

Closed sashatrubetskoy closed 2 years ago

sashatrubetskoy commented 2 years ago

Having a "-" in the query causes the following error:

java.lang.NullPointerException: Query must not be null
        at java.base/java.util.Objects.requireNonNull(Objects.java:246)
        at org.apache.lucene.search.BooleanClause.<init>(BooleanClause.java:77)
        at bluewave.utils.FileIndex.getTopDocs(FileIndex.java:251)
        at bluewave.utils.FileIndex.findDocuments(FileIndex.java:201)
        at bluewave.web.services.DocumentService.getDocuments(DocumentService.java:358)
        at bluewave.web.services.DocumentService.getServiceResponse(DocumentService.java:208)
        at bluewave.web.WebServices.getServiceResponse(WebServices.java:270)
        at bluewave.web.WebServices.processRequest(WebServices.java:115)
        at bluewave.web.WebApp.processRequest(WebApp.java:316)
        at javaxt.http.Server$RequestHandler.handle(Server.java:738)
        at org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:127)
        at org.eclipse.jetty.server.Server.handle(Server.java:516)
        at org.eclipse.jetty.server.HttpChannel.lambda$handle$1(HttpChannel.java:388)
        at org.eclipse.jetty.server.HttpChannel.dispatch(HttpChannel.java:633)
        at org.eclipse.jetty.server.HttpChannel.handle(HttpChannel.java:380)
        at org.eclipse.jetty.server.HttpConnection.onFillable(HttpConnection.java:277)
        at org.eclipse.jetty.io.AbstractConnection$ReadCallback.succeeded(AbstractConnection.java:311)
        at org.eclipse.jetty.io.FillInterest.fillable(FillInterest.java:105)
        at org.eclipse.jetty.io.ChannelEndPoint$1.run(ChannelEndPoint.java:104)
        at org.eclipse.jetty.util.thread.strategy.EatWhatYouKill.runTask(EatWhatYouKill.java:338)
        at org.eclipse.jetty.util.thread.strategy.EatWhatYouKill.doProduce(EatWhatYouKill.java:315)
        at org.eclipse.jetty.util.thread.strategy.EatWhatYouKill.tryProduce(EatWhatYouKill.java:173)
        at org.eclipse.jetty.util.thread.strategy.EatWhatYouKill.run(EatWhatYouKill.java:131)
        at org.eclipse.jetty.util.thread.ReservedThreadExecutor$ReservedThread.run(ReservedThreadExecutor.java:386)
        at org.eclipse.jetty.util.thread.QueuedThreadPool.runJob(QueuedThreadPool.java:883)
        at org.eclipse.jetty.util.thread.QueuedThreadPool$Runner.run(QueuedThreadPool.java:1034)
        at java.base/java.lang.Thread.run(Thread.java:834)
NullPointerException: Query must not be null
pborissow commented 2 years ago

References for different search engines:

https://lucene.apache.org/core/2_9_4/queryparsersyntax.html https://support.google.com/websearch/answer/2466433?hl=en https://webapps.qlik.com/search-cheat-sheet/Qlik+Sense+Search+Cheat+Sheet+en-US.pdf

sashatrubetskoy commented 2 years ago

It may potentially be a JavaScript issue with parsing the user input. We will try that first.

sashatrubetskoy commented 2 years ago

The Above issue was moved to a separate issue and resolved.