500 error titling an issue 'NOT' (OD-1298)
Jerome St-Louis opened 3 years ago

java.lang.RuntimeException: org.apache.lucene.queryparser.classic.ParseException: Cannot parse 'dO NOT': Encountered "" at line 1, column 6. Was expecting one of: ... "(" ... "" ... ... ... ... ... ... "[" ... "{" ... ... ... "" ...

at io.onedev.server.search.entitytext.DefaultIssueTextManager.buildQuery(DefaultIssueTextManager.java:247)
at io.onedev.server.search.entitytext.DefaultIssueTextManager.query(DefaultIssueTextManager.java:290)
at io.onedev.server.web.component.issue.create.NewIssueEditor$3.load(NewIssueEditor.java:131)
at io.onedev.server.web.component.issue.create.NewIssueEditor$3.load(NewIssueEditor.java:124)
at org.apache.wicket.model.LoadableDetachableModel.getObject(LoadableDetachableModel.java:137)
at io.onedev.server.web.component.issue.create.NewIssueEditor$4.onConfigure(NewIssueEditor.java:145)
at org.apache.wicket.Component.configure(Component.java:1056)
at org.apache.wicket.Component.internalBeforeRender(Component.java:941)
at org.apache.wicket.Component.beforeRender(Component.java:1018)
at org.apache.wicket.Component.internalPrepareForRender(Component.java:2236)
at org.apache.wicket.Component.prepareForRender(Component.java:2275)
at org.apache.wicket.page.XmlPartialPageUpdate.writeComponent(XmlPartialPageUpdate.java:98)
at org.apache.wicket.page.PartialPageUpdate.writeComponents(PartialPageUpdate.java:248)
at org.apache.wicket.page.PartialPageUpdate.writeTo(PartialPageUpdate.java:161)
at org.apache.wicket.ajax.AjaxRequestHandler.respond(AjaxRequestHandler.java:359)
at org.apache.wicket.request.cycle.RequestCycle$HandlerExecutor.respond(RequestCycle.java:917)
at org.apache.wicket.request.RequestHandlerStack.execute(RequestHandlerStack.java:64)
at org.apache.wicket.request.RequestHandlerStack.execute(RequestHandlerStack.java:97)
at org.apache.wicket.request.cycle.RequestCycle.execute(RequestCycle.java:274)
at org.apache.wicket.request.cycle.RequestCycle.processRequest(RequestCycle.java:231)
at org.apache.wicket.request.cycle.RequestCycle.processRequestAndDetach(RequestCycle.java:302)
at org.apache.wicket.protocol.ws.AbstractUpgradeFilter.processRequestCycle(AbstractUpgradeFilter.java:70)
at org.apache.wicket.protocol.http.WicketFilter.processRequest(WicketFilter.java:203)
at org.apache.wicket.protocol.http.WicketServlet.doPost(WicketServlet.java:159)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:707)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:790)
at io.onedev.server.web.DefaultWicketServlet.service(DefaultWicketServlet.java:43)
at io.onedev.server.web.DefaultWicketServlet$$EnhancerByGuice$$160417877.GUICE$TRAMPOLINE(<generated>)
at com.google.inject.internal.InterceptorStackCallback$InterceptedMethodInvocation.proceed(InterceptorStackCallback.java:74)
at io.onedev.server.persistence.SessionInterceptor$1.call(SessionInterceptor.java:23)
at io.onedev.server.persistence.DefaultSessionManager.call(DefaultSessionManager.java:90)
at io.onedev.server.persistence.SessionInterceptor.invoke(SessionInterceptor.java:18)
at com.google.inject.internal.InterceptorStackCallback$InterceptedMethodInvocation.proceed(InterceptorStackCallback.java:75)
at com.google.inject.internal.InterceptorStackCallback.invoke(InterceptorStackCallback.java:55)
at io.onedev.server.web.DefaultWicketServlet$$EnhancerByGuice$$160417877.service(<generated>)
at org.eclipse.jetty.servlet.ServletHolder.handle(ServletHolder.java:799)
at org.eclipse.jetty.servlet.ServletHandler$ChainEnd.doFilter(ServletHandler.java:1626)
at com.google.inject.servlet.DefaultFilterPipeline.dispatch(DefaultFilterPipeline.java:47)
at com.google.inject.servlet.GuiceFilter.doFilter(GuiceFilter.java:133)
at org.eclipse.jetty.servlet.FilterHolder.doFilter(FilterHolder.java:193)
at org.eclipse.jetty.servlet.ServletHandler$Chain.doFilter(ServletHandler.java:1601)
at io.onedev.server.git.GoGetFilter.doFilter(GoGetFilter.java:87)
at org.eclipse.jetty.servlet.FilterHolder.doFilter(FilterHolder.java:193)
at org.eclipse.jetty.servlet.ServletHandler$Chain.doFilter(ServletHandler.java:1601)
at io.onedev.server.git.GitLfsFilter.doFilter(GitLfsFilter.java:489)
at org.eclipse.jetty.servlet.FilterHolder.doFilter(FilterHolder.java:193)
at org.eclipse.jetty.servlet.ServletHandler$Chain.doFilter(ServletHandler.java:1601)
at io.onedev.server.git.GitFilter.doFilter(GitFilter.java:382)
at org.eclipse.jetty.servlet.FilterHolder.doFilter(FilterHolder.java:193)
at org.eclipse.jetty.servlet.ServletHandler$Chain.doFilter(ServletHandler.java:1601)
at org.apache.shiro.web.servlet.ProxiedFilterChain.doFilter(ProxiedFilterChain.java:61)
at org.apache.shiro.web.servlet.AdviceFilter.executeChain(AdviceFilter.java:108)
at org.apache.shiro.web.servlet.AdviceFilter.doFilterInternal(AdviceFilter.java:137)
at org.apache.shiro.web.servlet.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:154)
at org.apache.shiro.web.servlet.ProxiedFilterChain.doFilter(ProxiedFilterChain.java:66)
at org.apache.shiro.web.servlet.AdviceFilter.executeChain(AdviceFilter.java:108)
at org.apache.shiro.web.servlet.AdviceFilter.doFilterInternal(AdviceFilter.java:137)
at org.apache.shiro.web.servlet.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:154)
at org.apache.shiro.web.servlet.ProxiedFilterChain.doFilter(ProxiedFilterChain.java:66)
at org.apache.shiro.web.servlet.AbstractShiroFilter.executeChain(AbstractShiroFilter.java:458)
at org.apache.shiro.web.servlet.AbstractShiroFilter$1.call(AbstractShiroFilter.java:373)
at org.apache.shiro.subject.support.SubjectCallable.doCall(SubjectCallable.java:90)
at org.apache.shiro.subject.support.SubjectCallable.call(SubjectCallable.java:83)
at org.apache.shiro.subject.support.DelegatingSubject.execute(DelegatingSubject.java:387)
at org.apache.shiro.web.servlet.AbstractShiroFilter.doFilterInternal(AbstractShiroFilter.java:370)
at org.apache.shiro.web.servlet.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:154)
at org.eclipse.jetty.servlet.FilterHolder.doFilter(FilterHolder.java:193)
at org.eclipse.jetty.servlet.ServletHandler$Chain.doFilter(ServletHandler.java:1601)
at io.onedev.server.jetty.DisableTraceFilter.doFilter(DisableTraceFilter.java:28)
at org.eclipse.jetty.servlet.FilterHolder.doFilter(FilterHolder.java:193)
at org.eclipse.jetty.servlet.ServletHandler$Chain.doFilter(ServletHandler.java:1601)
at org.eclipse.jetty.servlet.ServletHandler.doHandle(ServletHandler.java:548)
at org.eclipse.jetty.server.handler.ScopedHandler.nextHandle(ScopedHandler.java:233)
at org.eclipse.jetty.server.session.SessionHandler.doHandle(SessionHandler.java:1624)
at org.eclipse.jetty.server.handler.ScopedHandler.nextHandle(ScopedHandler.java:233)
at org.eclipse.jetty.server.handler.ContextHandler.doHandle(ContextHandler.java:1434)
at org.eclipse.jetty.server.handler.ScopedHandler.nextScope(ScopedHandler.java:188)
at org.eclipse.jetty.servlet.ServletHandler.doScope(ServletHandler.java:501)
at org.eclipse.jetty.server.session.SessionHandler.doScope(SessionHandler.java:1594)
at org.eclipse.jetty.server.handler.ScopedHandler.nextScope(ScopedHandler.java:186)
at org.eclipse.jetty.server.handler.ContextHandler.doScope(ContextHandler.java:1349)
at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:141)
at org.eclipse.jetty.server.handler.gzip.GzipHandler.handle(GzipHandler.java:763)
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:829)

Caused by: org.apache.lucene.queryparser.classic.ParseException: Cannot parse 'dO NOT': Encountered "" at line 1, column 6. Was expecting one of: ... "(" ... "" ... ... ... ... ... ... "[" ... "{" ... ... ... "" ...

at org.apache.lucene.queryparser.classic.QueryParserBase.parse(QueryParserBase.java:114)
at io.onedev.server.search.entitytext.DefaultIssueTextManager.buildQuery(DefaultIssueTextManager.java:245)
... 99 more

Caused by: org.apache.lucene.queryparser.classic.ParseException: Encountered "" at line 1, column 6. Was expecting one of: ... "(" ... "" ... ... ... ... ... ... "[" ... "{" ... ... ... "" ...

at org.apache.lucene.queryparser.classic.QueryParser.generateParseException(QueryParser.java:931)
at org.apache.lucene.queryparser.classic.QueryParser.jj_consume_token(QueryParser.java:813)
at org.apache.lucene.queryparser.classic.QueryParser.Clause(QueryParser.java:373)
at org.apache.lucene.queryparser.classic.QueryParser.Query(QueryParser.java:303)
at org.apache.lucene.queryparser.classic.QueryParser.TopLevelQuery(QueryParser.java:215)
at org.apache.lucene.queryparser.classic.QueryParserBase.parse(QueryParserBase.java:109)
... 100 more
  • Jerome St-Louis commented 3 years ago

    To reproduce:

    • Click 'add' button on backlog column, type NOT in uppercase in Title.
  • Jerome St-Louis changed title 3 years ago
    Previous Value Current Value
    500 error as I'm trying to create a new issue
    500 error titling an issue 'NOT'
  • OneDev changed state to 'Closed' 3 years ago
    Previous Value Current Value
    Open
    Closed
  • OneDev commented 3 years ago

    State changed as code fixing the issue is committed (adf69ec6)

  • Jerome St-Louis commented 3 years ago

    @robin rofl at the console.log() fix

    I really don't understand how this can fix that NOT issue though! :)

  • Robin Shen commented 3 years ago

    The correct link:

    https://code.onedev.io/onedev/server/~commits/adf69ec60cf78913512623f83a4eb694792cfc78?mark=adf69ec60cf78913512623f83a4eb694792cfc78:server-core/src/main/java/io/onedev/server/web/page/base/base.js:390.1-390.33-1
    
  • Jerome St-Louis commented 3 years ago

    @robin Yes, so that console.log() automatically triggers a 500?

    And I have a hard time how to understand how all of that textDiffContent relates to typing NOT in the text box, but I am not familiar at all with the codebase, so please don't mind me ;)

  • Robin Shen commented 3 years ago

    Sorry I am referencing the wrong issue number. The correct commit fixing the issue is:

    https://code.onedev.io/onedev/server/~commits/e3025086d62b933db8442cf185090f13da63fa7c

  • Jerome St-Louis commented 3 years ago

    @robin I am confused because you point to commit adf69ec6 as the "code fixing the issue" for 4 issues: issue #1298, issue #1299, issue #1300 and issue #1304 , but there are only 2 lines in that commit.

    So perhaps you mean that at this state in the git history those issues were fixed, but not necessarily that this is the specific commit fixing the issue.

  • Jerome St-Louis commented 3 years ago

    Thanks @robin .

    Makes more sense :) Maybe some of those other issues mentioned above have a similar referencing problem.

  • Robin Shen commented 3 years ago

    As the sole person working on this project, I am not very strict on referencing the correct issue numbers, as I am continuously amend commits from IDE, and something wrong may happen during this process.

  • Robin Shen commented 3 years ago

    The commits tab refencing the correct commit:

    https://code.onedev.io/onedev/server/~issues/1298/commits

    While the comment (State changed as code fixing the issue is committed (adf69ec6)) is incorrect. Looks like there is a bug here. Will look more into this.

  • Jerome St-Louis commented 3 years ago

    @robin

    As the sole person working on this project, I am not very strict on referencing the correct issue numbers, as I am continuously amend commits from IDE, and something wrong may happen during this process.

    I am certain that OneDev being a one person (you) project, as well as your insistance on keeping the code base as simple and maintainable as possible, has a lot to do with all that is good about OneDev (lightness, performance, good essential feature set).

    However, I also think it is, by a huge margin, the very best source code management / CI/CD / Kanban solution on Earth (possibly in the galaxy) and perhaps it could grow to be just a bit bigger of an open-source community project and soon gain a user community larger by several orders of magnitude ;)

    Please keep in mind that it is in that spirit that I am being a bit of a pain reporting issues and making suggestions ;)

    ❤️ OneDev.

  • Robin Shen commented 3 years ago

    Thanks for the kind words and all the feedbacks. It helped a lot!

  • OneDev changed state to 'Released' 3 years ago
    Previous Value Current Value
    Closed
    Released
  • OneDev commented 3 years ago

    State changed as build #3540 is successful

issue 1/1
Type
Bug
Priority
Normal
Assignee
Affected Versions
8.0.14
Issue Votes (0)
Watchers (4)
Reference
OD-1298
Please wait...
Connection lost or session expired, reload to recover
Page is in error, reload to recover