org.apache.lucene.search.BooleanQuery$TooManyClauses

Atlassian JIRA | Tim Jones | 1 decade ago
  1. 0

    when there are a large number of issues spanning a large number of dates in Jira, searches using date criteria will fail with the exception: An error occurred searching: org.apache.lucene.search.BooleanQuery$TooManyClauses see stack trace below. The problem is that the date range search query actually turns into a BooleanQuery inside lucene, and if there are more than 1024 different dates, lucene will fail. What needs to happen is the "Created After" and "Created Before" search criteria need to be combined into a single date range. Right now, they are individual RangeQueries, causing lucene to try to match every single date on one side or the other of the chosen boundary. If the user only chooses "Created Before" (for example), and there are more than 1000 possible dates, Jira should present some kind of error message asking for a lower limit. Or (perhaps better) go as far as it can and report the limit in the search results. Note that the lucene api allows you to retrieve terms less than a given term - see IndexReader#terms(Term). It would be possible to use this to determine that too many dates match. Another solution would be to "normalize" dates in the search index to whole number days only. Right now it would appear the actual timestamp is indexed and the hours, minutes and seconds are not stripped off. Stripping these off would reduce the number of indexed terms in the lucene index. However, after a few years (1024 days, to be exact :) even this will fail - so Jira will still need to do some error checking. stack trace: org.apache.lucene.search.BooleanQuery$TooManyClauses at org.apache.lucene.search.BooleanQuery.add(BooleanQuery.java:109) at org.apache.lucene.search.BooleanQuery.add(BooleanQuery.java:101) at org.apache.lucene.search.RangeQuery.rewrite(RangeQuery.java:137) at org.apache.lucene.search.BooleanQuery.rewrite(BooleanQuery.java:244) at org.apache.lucene.search.IndexSearcher.rewrite(IndexSearcher.java:188) at org.apache.lucene.search.Query.weight(Query.java:120) at org.apache.lucene.search.IndexSearcher.search(IndexSearcher.java:128) at org.apache.lucene.search.MultiSearcher.search(MultiSearcher.java:150) at org.apache.lucene.search.Hits.getMoreDocs(Hits.java:93) at org.apache.lucene.search.Hits.<init>(Hits.java:80) at org.apache.lucene.search.Searcher.search(Searcher.java:71) at org.apache.lucene.search.Searcher.search(Searcher.java:65) at com.atlassian.jira.issue.search.providers.LuceneSearchProvider.search(LuceneSearchProvider.java:75) at com.atlassian.jira.issue.search.providers.DefaultSearchProvider.search(DefaultSearchProvider.java:43) at com.atlassian.jira.issue.managers.DefaultIssueManager.execute(DefaultIssueManager.java:144) at com.atlassian.jira.issue.managers.CachingIssueManager.execute(CachingIssueManager.java:82) at com.atlassian.jira.web.action.issue.IssueNavigator.getBrowsableItems(IssueNavigator.java:370) at com.atlassian.jira.web.action.issue.IssueNavigator.doExecute(IssueNavigator.java:258) at webwork.action.ActionSupport.execute(ActionSupport.java:154) at com.atlassian.jira.action.JiraActionSupport.execute(JiraActionSupport.java:46) at webwork.dispatcher.GenericDispatcher.executeAction(GenericDispatcher.java:131) at com.atlassian.jira.web.dispatcher.JiraServletDispatcher.service(JiraServletDispatcher.java:181) at javax.servlet.http.HttpServlet.service(HttpServlet.java:856)

    Atlassian JIRA | 1 decade ago | Tim Jones
    org.apache.lucene.search.BooleanQuery$TooManyClauses
  2. 0

    when there are a large number of issues spanning a large number of dates in Jira, searches using date criteria will fail with the exception: An error occurred searching: org.apache.lucene.search.BooleanQuery$TooManyClauses see stack trace below. The problem is that the date range search query actually turns into a BooleanQuery inside lucene, and if there are more than 1024 different dates, lucene will fail. What needs to happen is the "Created After" and "Created Before" search criteria need to be combined into a single date range. Right now, they are individual RangeQueries, causing lucene to try to match every single date on one side or the other of the chosen boundary. If the user only chooses "Created Before" (for example), and there are more than 1000 possible dates, Jira should present some kind of error message asking for a lower limit. Or (perhaps better) go as far as it can and report the limit in the search results. Note that the lucene api allows you to retrieve terms less than a given term - see IndexReader#terms(Term). It would be possible to use this to determine that too many dates match. Another solution would be to "normalize" dates in the search index to whole number days only. Right now it would appear the actual timestamp is indexed and the hours, minutes and seconds are not stripped off. Stripping these off would reduce the number of indexed terms in the lucene index. However, after a few years (1024 days, to be exact :) even this will fail - so Jira will still need to do some error checking. stack trace: org.apache.lucene.search.BooleanQuery$TooManyClauses at org.apache.lucene.search.BooleanQuery.add(BooleanQuery.java:109) at org.apache.lucene.search.BooleanQuery.add(BooleanQuery.java:101) at org.apache.lucene.search.RangeQuery.rewrite(RangeQuery.java:137) at org.apache.lucene.search.BooleanQuery.rewrite(BooleanQuery.java:244) at org.apache.lucene.search.IndexSearcher.rewrite(IndexSearcher.java:188) at org.apache.lucene.search.Query.weight(Query.java:120) at org.apache.lucene.search.IndexSearcher.search(IndexSearcher.java:128) at org.apache.lucene.search.MultiSearcher.search(MultiSearcher.java:150) at org.apache.lucene.search.Hits.getMoreDocs(Hits.java:93) at org.apache.lucene.search.Hits.<init>(Hits.java:80) at org.apache.lucene.search.Searcher.search(Searcher.java:71) at org.apache.lucene.search.Searcher.search(Searcher.java:65) at com.atlassian.jira.issue.search.providers.LuceneSearchProvider.search(LuceneSearchProvider.java:75) at com.atlassian.jira.issue.search.providers.DefaultSearchProvider.search(DefaultSearchProvider.java:43) at com.atlassian.jira.issue.managers.DefaultIssueManager.execute(DefaultIssueManager.java:144) at com.atlassian.jira.issue.managers.CachingIssueManager.execute(CachingIssueManager.java:82) at com.atlassian.jira.web.action.issue.IssueNavigator.getBrowsableItems(IssueNavigator.java:370) at com.atlassian.jira.web.action.issue.IssueNavigator.doExecute(IssueNavigator.java:258) at webwork.action.ActionSupport.execute(ActionSupport.java:154) at com.atlassian.jira.action.JiraActionSupport.execute(JiraActionSupport.java:46) at webwork.dispatcher.GenericDispatcher.executeAction(GenericDispatcher.java:131) at com.atlassian.jira.web.dispatcher.JiraServletDispatcher.service(JiraServletDispatcher.java:181) at javax.servlet.http.HttpServlet.service(HttpServlet.java:856)

    Atlassian JIRA | 1 decade ago | Tim Jones
    org.apache.lucene.search.BooleanQuery$TooManyClauses
  3. 0

    I have upgraded from 1.4.4 to 2.0 (installed 2.0 in its own folder and change the confluence-home to point to the 1.4.4 one.) After logging in the following error is displayed on the dashboard "Error rendering macro: org.apache.lucene.search.BooleanQuery$TooManyClauses" The full trace of the exception from catalina.out is: 2005-11-22 12:27:13,497 ERROR [renderer.radeox.macros.AbstractHtmlGeneratingMacro] Error rendering macro with url: dashboard org.apache.lucene.search.BooleanQuery$TooManyClauses at org.apache.lucene.search.BooleanQuery.add(BooleanQuery.java:79) at org.apache.lucene.search.BooleanQuery.add(BooleanQuery.java:71) at org.apache.lucene.search.RangeQuery.rewrite(RangeQuery.java:99) at org.apache.lucene.search.BooleanQuery.rewrite(BooleanQuery.java:243) at org.apache.lucene.search.IndexSearcher.rewrite(IndexSearcher.java:166) at org.apache.lucene.search.Query.weight(Query.java:84) at org.apache.lucene.search.IndexSearcher.search(IndexSearcher.java:117) at org.apache.lucene.search.Hits.getMoreDocs(Hits.java:64) at org.apache.lucene.search.Hits.<init>(Hits.java:51) at org.apache.lucene.search.Searcher.search(Searcher.java:41) at com.atlassian.confluence.core.LuceneSmartListManager.getListQueryResults(LuceneSmartListManager.java:82) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) at java.lang.reflect.Method.invoke(Method.java:585) at org.springframework.aop.framework.AopProxyUtils.invokeJoinpointUsingReflection(AopProxyUtils.java:61) at org.springframework.aop.framework.ReflectiveMethodInvocation.invokeJoinpoint(ReflectiveMethodInvocation.java:149) at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:116) at com.atlassian.confluence.util.profiling.SpringProfilingInterceptor.invoke(SpringProfilingInterceptor.java:16) at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:138) at org.springframework.transaction.interceptor.TransactionInterceptor.invoke(TransactionInterceptor.java:56) at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:138) at org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:152) at $Proxy20.getListQueryResults(Unknown Source) at com.atlassian.confluence.renderer.radeox.macros.RecentlyUpdatedContentMacro.getHtml(RecentlyUpdatedContentMacro.java:125) at com.atlassian.confluence.renderer.radeox.macros.AbstractHtmlGeneratingMacro.execute(AbstractHtmlGeneratingMacro.java:44) at com.atlassian.renderer.macro.RadeoxCompatibilityMacro.execute(RadeoxCompatibilityMacro.java:149) at com.atlassian.confluence.renderer.v2.macros.RadeoxCompatibilityMacro.execute(RadeoxCompatibilityMacro.java:26) at com.atlassian.renderer.v2.macro.ResourceAwareMacroDecorator.execute(ResourceAwareMacroDecorator.java:45) at com.atlassian.renderer.v2.components.MacroRendererComponent.processMacro(MacroRendererComponent.java:302) at com.atlassian.renderer.v2.components.MacroRendererComponent.makeMacro(MacroRendererComponent.java:206) at com.atlassian.renderer.v2.components.MacroRendererComponent.makeMacro(MacroRendererComponent.java:128) at com.atlassian.renderer.v2.components.MacroRendererComponent.handlePotentialMacro(MacroRendererComponent.java:113) at com.atlassian.renderer.v2.components.MacroRendererComponent.render(MacroRendererComponent.java:75) at com.atlassian.renderer.v2.V2Renderer.render(V2Renderer.java:49) at com.atlassian.renderer.v2.V2RendererFacade.convertWikiToXHtml(V2RendererFacade.java:57) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) at java.lang.reflect.Method.invoke(Method.java:585) at org.springframework.aop.framework.AopProxyUtils.invokeJoinpointUsingReflection(AopProxyUtils.java:61) at org.springframework.aop.framework.ReflectiveMethodInvocation.invokeJoinpoint(ReflectiveMethodInvocation.java:149) at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:116) at com.atlassian.confluence.util.profiling.SpringProfilingInterceptor.invoke(SpringProfilingInterceptor.java:16) at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:138) at org.springframework.transaction.interceptor.TransactionInterceptor.invoke(TransactionInterceptor.java:56) at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:138) at org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:152) at $Proxy22.convertWikiToXHtml(Unknown Source) at com.atlassian.confluence.renderer.DefaultWikiStyleRenderer.convertWikiToXHtml(DefaultWikiStyleRenderer.java:23) at com.atlassian.confluence.themes.GlobalHelper.renderConfluenceMacro(GlobalHelper.java:147) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) at java.lang.reflect.Method.invoke(Method.java:585) at org.apache.velocity.runtime.parser.node.ASTMethod.execute(ASTMethod.java:260) at org.apache.velocity.runtime.parser.node.ASTReference.execute(ASTReference.java:207) at org.apache.velocity.runtime.parser.node.ASTReference.render(ASTReference.java:250) at org.apache.velocity.runtime.parser.node.ASTBlock.render(ASTBlock.java:94) at org.apache.velocity.runtime.parser.node.ASTIfStatement.render(ASTIfStatement.java:109) at org.apache.velocity.runtime.parser.node.SimpleNode.render(SimpleNode.java:271) at org.apache.velocity.Template.merge(Template.java:296) at com.atlassian.confluence.util.velocity.VelocityUtils.getRenderedTemplateWithoutSwallowingErrors(VelocityUtils.java:46) at com.atlassian.confluence.util.velocity.VelocityUtils.getRenderedTemplate(VelocityUtils.java:32) at com.atlassian.confluence.setup.velocity.ApplyDecoratorDirective.render(ApplyDecoratorDirective.java:224) at org.apache.velocity.runtime.parser.node.ASTDirective.render(ASTDirective.java:153) at org.apache.velocity.runtime.parser.node.SimpleNode.render(SimpleNode.java:271) at org.apache.velocity.runtime.directive.VelocimacroProxy.render(VelocimacroProxy.java:215) at org.apache.velocity.runtime.parser.node.ASTDirective.render(ASTDirective.java:153) at org.apache.velocity.runtime.parser.node.ASTBlock.render(ASTBlock.java:94) at org.apache.velocity.runtime.parser.node.ASTIfStatement.render(ASTIfStatement.java:109) at org.apache.velocity.runtime.parser.node.SimpleNode.render(SimpleNode.java:271) at org.apache.velocity.Template.merge(Template.java:296) at com.atlassian.confluence.util.velocity.VelocityUtils.getRenderedTemplateWithoutSwallowingErrors(VelocityUtils.java:46) at com.atlassian.confluence.util.velocity.VelocityUtils.getRenderedTemplate(VelocityUtils.java:32) at com.atlassian.confluence.setup.velocity.ApplyDecoratorDirective.render(ApplyDecoratorDirective.java:224) at org.apache.velocity.runtime.parser.node.ASTDirective.render(ASTDirective.java:153) at org.apache.velocity.runtime.parser.node.SimpleNode.render(SimpleNode.java:271) at org.apache.velocity.Template.merge(Template.java:296) at com.opensymphony.webwork.dispatcher.VelocityResult.doExecute(VelocityResult.java:91) at bucket.util.profiling.ProfiledVelocityResult.doExecute(ProfiledVelocityResult.java:18) at com.opensymphony.webwork.dispatcher.WebWorkResultSupport.execute(WebWorkResultSupport.java:116) at com.opensymphony.xwork.DefaultActionInvocation.executeResult(DefaultActionInvocation.java:263) at com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:187) at com.opensymphony.xwork.interceptor.AroundInterceptor.intercept(AroundInterceptor.java:35) at com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:165) at com.atlassian.confluence.security.actions.PermissionCheckInterceptor.intercept(PermissionCheckInterceptor.java:40) at com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:165) at com.atlassian.confluence.pages.actions.PageAwareInterceptor.intercept(PageAwareInterceptor.java:94) at com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:165) at com.atlassian.confluence.spaces.actions.SpaceAwareInterceptor.intercept(SpaceAwareInterceptor.java:82) at com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:165) at com.opensymphony.xwork.interceptor.AroundInterceptor.intercept(AroundInterceptor.java:35) at com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:165) at com.atlassian.confluence.core.ConfluenceAutowireInterceptor.intercept(ConfluenceAutowireInterceptor.java:25) at com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:165) at com.opensymphony.xwork.interceptor.AroundInterceptor.intercept(AroundInterceptor.java:35) at com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:165) at com.opensymphony.xwork.interceptor.AroundInterceptor.intercept(AroundInterceptor.java:35) at com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:165) at com.atlassian.confluence.util.XWorkTransactionInterceptor.intercept(XWorkTransactionInterceptor.java:133) at com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:165) at com.opensymphony.xwork.interceptor.AroundInterceptor.intercept(AroundInterceptor.java:35) at com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:165) at com.opensymphony.xwork.DefaultActionProxy.execute(DefaultActionProxy.java:115) at com.opensymphony.webwork.dispatcher.ServletDispatcher.serviceAction(ServletDispatcher.java:229) at com.opensymphony.webwork.dispatcher.ServletDispatcher.service(ServletDispatcher.java:199) at javax.servlet.http.HttpServlet.service(HttpServlet.java:856) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:284) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:204) at com.opensymphony.module.sitemesh.filter.PageFilter.parsePage(PageFilter.java:118) at com.atlassian.confluence.util.profiling.ProfilingPageFilter.parsePage(ProfilingPageFilter.java:150) at com.opensymphony.module.sitemesh.filter.PageFilter.doFilter(PageFilter.java:52) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:233) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:204) at com.atlassian.confluence.util.UserThreadLocalFilter.doFilter(UserThreadLocalFilter.java:46) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:233) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:204) at com.atlassian.seraph.filter.SecurityFilter.doFilter(SecurityFilter.java:182) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:233) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:204) at com.atlassian.seraph.filter.LoginFilter.doFilter(LoginFilter.java:177) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:233) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:204) at com.atlassian.johnson.filters.JohnsonFilter.doFilter(JohnsonFilter.java:96) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:233) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:204) at org.springframework.orm.hibernate.support.OpenSessionInViewFilter.doFilterInternal(OpenSessionInViewFilter.java:170) at bucket.custom.FlushingSpringSessionInViewFilter.doFilterInternal(FlushingSpringSessionInViewFilter.java:31) at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:73) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:233) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:204) at com.atlassian.util.profiling.filters.ProfilingFilter.doFilter(ProfilingFilter.java:132) at com.atlassian.confluence.util.error.ProfilingAndErrorFilter.doFilter(ProfilingAndErrorFilter.java:27) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:233) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:204) at com.atlassian.core.filters.gzip.GzipFilter.doFilter(GzipFilter.java:61) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:233) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:204) at com.atlassian.core.filters.AbstractEncodingFilter.doFilter(AbstractEncodingFilter.java:37) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:233) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:204) at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:257) at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:151) at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:567) at org.apache.catalina.core.StandardContextValve.invokeInternal(StandardContextValve.java:245) at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:199) at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:151) at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:567) at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:184) at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:151) at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:164) at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:149) at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:567) at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:156) at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:151) at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:567) at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:972) at org.apache.coyote.tomcat5.CoyoteAdapter.service(CoyoteAdapter.java:206) at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:833) at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.processConnection(Http11Protocol.java:732) at org.apache.tomcat.util.net.TcpWorkerThread.runIt(PoolTcpEndpoint.java:619) at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:688) at java.lang.Thread.run(Thread.java:595)

    Atlassian JIRA | 1 decade ago | Marius Constantin
    org.apache.lucene.search.BooleanQuery$TooManyClauses
  4. Speed up your debug routine!

    Automated exception search integrated into your IDE

  5. 0

    The AJAX Issue Picker uses a PrefixQuery which, via rewrite() is expanded to become a boolean query combining all possible matches as read in via the IndexReader with a boolean OR. This consumes linear space with respect to the size of the search index. For a case with about 94000 issues this appears to entail approx. 900Mb. Insane? perhaps, but it seems the Lucene people think this is fine. See the discussion from the mailing list below. TooManyClauses is designed to indicate a problem like this. Support case that brought this up: [JSP-16824|https://support.atlassian.com/browse/JSP-16824] The customer increased their maximum clauses and this resulted in an OutOfMemoryException. h4. reproduction steps To reproduce the problem with AJAX issue picker turned ON: # create a large number of issues in the same project. (100000 seems ample) # perform a search for all issues (hit enter in the quicksearch) This is necessary to seed the search space for the AJAX issue picker since it uses current query plus some other stuff. # go to any issue # click link the issue # start typing the project key. AJAX requests will be made on each keystroke which should cause the stack trace below: {code} 2007-11-05 13:08:07,667 http-8080-Processor2 ERROR [bc.issue.search.AbstractIssuePickerSearchProvider] Error while executing search request org.apache.lucene.search.BooleanQuery$TooManyClauses at org.apache.lucene.search.BooleanQuery.add(BooleanQuery.java:184) at org.apache.lucene.search.BooleanQuery.add(BooleanQuery.java:175) at org.apache.lucene.search.PrefixQuery.rewrite(PrefixQuery.java:52) at org.apache.lucene.search.BooleanQuery.rewrite(BooleanQuery.java:381) at org.apache.lucene.search.BooleanQuery.rewrite(BooleanQuery.java:396) at org.apache.lucene.search.BooleanQuery.rewrite(BooleanQuery.java:396) at org.apache.lucene.search.BooleanQuery.rewrite(BooleanQuery.java:396) at org.apache.lucene.search.IndexSearcher.rewrite(IndexSearcher.java:137) at org.apache.lucene.search.Query.weight(Query.java:92) at org.apache.lucene.search.Hits.<init>(Hits.java:41) at org.apache.lucene.search.Searcher.search(Searcher.java:44) at com.atlassian.jira.issue.search.providers.LuceneSearchProvider.runSearch(LuceneSearchProvider.java:148) at com.atlassian.jira.issue.search.providers.LuceneSearchProvider.getHits(LuceneSearchProvider.java:76) at com.atlassian.jira.issue.search.providers.LuceneSearchProvider.search(LuceneSearchProvider.java:208) at com.atlassian.jira.bc.issue.search.AbstractIssuePickerSearchProvider.getResults(AbstractIssuePickerSearchProvider.java:81) at com.atlassian.jira.bc.issue.search.DefaultIssuePickerSearchService.getResults(DefaultIssuePickerSearchService.java:59) at com.atlassian.jira.web.dwr.AjaxIssuePicker.getIssues(AjaxIssuePicker.java:89) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) at java.lang.reflect.Method.invoke(Method.java:585) at uk.ltd.getahead.dwr.impl.ExecuteQuery.execute(ExecuteQuery.java:248) at uk.ltd.getahead.dwr.impl.DefaultExecProcessor.handle(DefaultExecProcessor.java:48) at uk.ltd.getahead.dwr.impl.DefaultProcessor.handle(DefaultProcessor.java:81) at uk.ltd.getahead.dwr.AbstractDWRServlet.doPost(AbstractDWRServlet.java:162) at javax.servlet.http.HttpServlet.service(HttpServlet.java:709) at javax.servlet.http.HttpServlet.service(HttpServlet.java:802) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:252) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173) at com.atlassian.jira.web.filters.AccessLogFilter.doFilter(AccessLogFilter.java:73) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173) at com.atlassian.seraph.filter.SecurityFilter.doFilter(SecurityFilter.java:182) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173) at com.atlassian.seraph.filter.LoginFilter.doFilter(LoginFilter.java:181) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173) at com.atlassian.jira.web.filters.ActionCleanupDelayFilter.doFilter(ActionCleanupDelayFilter.java:43) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173) at com.atlassian.jira.web.filters.RequestCleanupFilter.doFilter(RequestCleanupFilter.java:49) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173) at com.atlassian.johnson.filters.AbstractJohnsonFilter.doFilter(AbstractJohnsonFilter.java:72) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173) at com.atlassian.jira.web.filters.gzip.GzipFilter.doFilter(GzipFilter.java:64) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173) at com.atlassian.core.filters.AbstractEncodingFilter.doFilter(AbstractEncodingFilter.java:37) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173) at com.atlassian.jira.appconsistency.db.DatabaseCompatibilityEnforcerFilter.doFilter(DatabaseCompatibilityEnforcerFilter.java:39) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173) at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:213) at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:178) at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:126) at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:105) at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:107) at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:148) at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:869) at org.apache.coyote.http11.Http11BaseProtocol$Http11ConnectionHandler.processConnection(Http11BaseProtocol.java:664) at org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpoint.java:527) at org.apache.tomcat.util.net.LeaderFollowerWorkerThread.runIt(LeaderFollowerWorkerThread.java:80) at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:684) at java.lang.Thread.run(Thread.java:613) {code} The solution options are alluded to in the snippet below. from http://mail-archives.apache.org/mod_mbox/lucene-java-user/200612.mbox/%3c359a92830612270753x3d0e3511g634b8e9c145d4034@mail.gmail.com%3e {panel:title="excerpt from lucene mailing list"} Also, see the thread on this list titled "I just don't get wildcards at all" to see an extensive discussion of this issue, as well as wildcards in general. You might also search the archive for wildcards. The short form is that any wildcard (including prefix queries) expands under the covers to create a clause for each possible entry in the index for that field. For instance, say a field had the following values: abcd abck abt Searching for ab* would expand to searching for ab, abck and abt under the covers. When the number of possibilities gets above the default value of 1024, you see a TooManyClauses exception. Expanding the number of clauses *may* fix you right up, but on any reasonably sized index, you can come up with a query that'll exceed whatever number you set. Or you'll get to an unacceptable performance/memory footprint. Imagine your query with things like a* Think seriously about how you're going to deal with this. There are several options: 1> use filters for all your wildcard clauses and create your own BooleanQuery. Be aware that using filters affects scoring. 2> Assume that any query that throws a TooManyClauses exception (after you've set a suitable max as Paul suggested) is too broad to be useful and respond to the user with some polite phrase asking them to refine the query. 3> Look over the SrndQuery classes. I don't fully understand these, but they certainly behave much differently in this area. Note that SrndQuery limits wildcards to having at least three non-wildcard characters. 4> Ask whether stemming is a complete or partial solution. Ditto for Soundex. There's a good chance these won't apply, but they may. 5> <Insert the solution to your specific problem here> This is a sticky wicket that will probably consume more time than you think to handle. It's easy for your product manager to claim that "Of course, we must support arbitrary wildcards", but I'd urge you to seriously ask what value *arbitrary* wildcards bring to the product. When you start getting thousands of responses to a query, is it actually valuable to return them to the user? Or do you give her just as much value (and deliver product sooner) by telling her up front that she's getting too many responses to be useful? With this last strategy, you just catch the TooManyClauses exception and respond with "refine your query"..... Best Erick On 12/27/06, Paul Elschot <paul.elschot@xs4all.nl> wrote: > > Chris, > > On Wednesday 27 December 2006 15:42, Chris Salem wrote: > > Hi All, > > > > I'm getting a 'TooManyClauses' Exception and I'm not sure how to fix > this. > Here's a sample query that I'm using: > > > > +(+freeform_text:exhibit* +(+freeform_text:dispaly > +freeform_text:event*) > +(+freeform_text:sale* +freeform_text:sells +freeform_text:develop*) > +(+freeform_text:trade +freeform_text:show +freeform_text:trade > +freeform_text:shows)) +degree_type:5 +position_desired:ftp > +city:washington~0.5 +state:dc +ncountry:usa +last_modified:[2005-12-26 TO > 2006-12-26] > > > > Here's the exception I'm getting: > > > > org.apache.lucene.search.BooleanQuery$TooManyClauses > > at org.apache.lucene.search.BooleanQuery.add(BooleanQuery.java:160) > > at org.apache.lucene.search.BooleanQuery.add(BooleanQuery.java:151) > > at org.apache.lucene.search.PrefixQuery.rewrite(PrefixQuery.java:52) > > One of the prefix queries is causing this, possibly event* or sale*. > Since they seem to be specific enough, increasing the maximum number > of boolean clauses that can be added to a boolean query appears to be > the good way to fix this, see BooleanQuery.setMaxClauseCount(). > > Regards, > Paul Elschot > > > at org.apache.lucene.search.BooleanQuery.rewrite(BooleanQuery.java:372) > > at org.apache.lucene.search.BooleanQuery.rewrite(BooleanQuery.java:372) > > at org.apache.lucene.search.BooleanQuery.rewrite(BooleanQuery.java:372) > > at org.apache.lucene.search.IndexSearcher.rewrite(IndexSearcher.java > :137) > > at org.apache.lucene.search.Query.weight(Query.java:93) > > at org.apache.lucene.search.Hits.<init>(Hits.java:41) > > at org.apache.lucene.search.Searcher.search(Searcher.java:44) > > at org.apache.lucene.search.Searcher.search(Searcher.java:36) > > at > net.mainsequence.pcr.lucene.LuceneHandler.multiSearch(LuceneHandler.java > :382) > > at > net.mainsequence.pcr.lucene.LuceneServlet.searchIndex(LuceneServlet.java > :169) > > at > net.mainsequence.pcr.lucene.LuceneServlet.processRequest( > LuceneServlet.java:83) > > at net.mainsequence.pcr.lucene.LuceneServlet.doPost(LuceneServlet.java > :72) > > at javax.servlet.http.HttpServlet.service(HttpServlet.java:709) > > at javax.servlet.http.HttpServlet.service(HttpServlet.java:802) > > at > org.apache.catalina.core.ApplicationFilterChain.internalDoFilter( > ApplicationFilterChain.java:252) > > at > org.apache.catalina.core.ApplicationFilterChain.doFilter( > ApplicationFilterChain.java:173) > > at > org.apache.catalina.core.StandardWrapperValve.invoke( > StandardWrapperValve.java:213) > > at > org.apache.catalina.core.StandardContextValve.invoke( > StandardContextValve.java:178) > > at > org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java > :126) > > at > org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java > :105) > > at > org.apache.catalina.core.StandardEngineValve.invoke( > StandardEngineValve.java:107) > > at > org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java > :148) > > at > org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:869) > > at > > org.apache.coyote.http11.Http11BaseProtocol$Http11ConnectionHandler.processConnection > (Http11BaseProtocol.java:664) > > at > org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket( > PoolTcpEndpoint.java:527) > > at > org.apache.tomcat.util.net.LeaderFollowerWorkerThread.runIt( > LeaderFollowerWorkerThread.java:80) > > at > org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run( > ThreadPool.java:684) > > at java.lang.Thread.run(Unknown Source) > > > > Is there anyway to increase the amount of clauses lucene can take? This > kind of large query is not uncommon so any help would be greatly > appreciated. > > > > > > Chris Salem {panel}

    Atlassian JIRA | 9 years ago | Chris Mountford ON LEAVE - June 10
    org.apache.lucene.search.BooleanQuery$TooManyClauses
  6. 0

    Mark suspects this occurs with build results from plans with a large number of build results: {noformat} FreeMarker template error! Method public com.atlassian.bamboo.resultsummary.BuildResultsSummary com.atlassian.bamboo.build.BuildResultsAction.getFailingSinceForTest(com.atlassian.bamboo.results.BuildResults,com.atlassian.bamboo.results.tests.TestResults) throws java.io.IOException threw an exception when invoked on com.atlassian.bamboo.build.ViewBuildResults@88f28f The problematic instruction: ---------- ==> assignment: failingSinceBuild=action.getFailingSinceForTest(buildResult, testResult) [on line 263, column 21 in lib/components.ftl] in user-directive cp.displayUnitTestsSummary [on line 198, column 13 in viewBuildResults.ftl] ---------- Java backtrace for programmers: ---------- freemarker.template.TemplateModelException: Method public com.atlassian.bamboo.resultsummary.BuildResultsSummary com.atlassian.bamboo.build.BuildResultsAction.getFailingSinceForTest(com.atlassian.bamboo.results.BuildResults,com.atlassian.bamboo.results.tests.TestResults) throws java.io.IOException threw an exception when invoked on com.atlassian.bamboo.build.ViewBuildResults@88f28f at freemarker.ext.beans.SimpleMethodModel.exec(SimpleMethodModel.java:136) at freemarker.core.MethodCall._getAsTemplateModel(MethodCall.java:93) at freemarker.core.Expression.getAsTemplateModel(Expression.java:89) at freemarker.core.Assignment.accept(Assignment.java:90) at freemarker.core.Environment.visit(Environment.java:196) at freemarker.core.MixedContent.accept(MixedContent.java:92) at freemarker.core.Environment.visit(Environment.java:196) at freemarker.core.IteratorBlock$Context.runLoop(IteratorBlock.java:160) at freemarker.core.Environment.visit(Environment.java:351) at freemarker.core.IteratorBlock.accept(IteratorBlock.java:95) at freemarker.core.Environment.visit(Environment.java:196) at freemarker.core.MixedContent.accept(MixedContent.java:92) at freemarker.core.Environment.visit(Environment.java:196) at freemarker.core.IteratorBlock$Context.runLoop(IteratorBlock.java:160) at freemarker.core.Environment.visit(Environment.java:351) at freemarker.core.IteratorBlock.accept(IteratorBlock.java:95) at freemarker.core.Environment.visit(Environment.java:196) at freemarker.core.MixedContent.accept(MixedContent.java:92) at freemarker.core.Environment.visit(Environment.java:196) at freemarker.core.Macro$Context.runMacro(Macro.java:164) at freemarker.core.Environment.visit(Environment.java:537) at freemarker.core.UnifiedCall.accept(UnifiedCall.java:128) at freemarker.core.Environment.visit(Environment.java:196) at freemarker.core.MixedContent.accept(MixedContent.java:92) at freemarker.core.Environment.visit(Environment.java:196) at freemarker.core.ConditionalBlock.accept(ConditionalBlock.java:79) at freemarker.core.Environment.visit(Environment.java:196) at freemarker.core.MixedContent.accept(MixedContent.java:92) at freemarker.core.Environment.visit(Environment.java:196) at freemarker.core.Environment.process(Environment.java:176) at freemarker.template.Template.process(Template.java:232) at com.opensymphony.webwork.views.freemarker.FreemarkerResult.doExecute(FreemarkerResult.java:153) at com.opensymphony.webwork.dispatcher.WebWorkResultSupport.execute(WebWorkResultSupport.java:143) at com.opensymphony.xwork.DefaultActionInvocation.executeResult(DefaultActionInvocation.java:313) at com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:208) at com.opensymphony.xwork.interceptor.DefaultWorkflowInterceptor.doIntercept(DefaultWorkflowInterceptor.java:175) at com.atlassian.bamboo.ww2.interceptors.BambooWorkflowInterceptor.doIntercept(BambooWorkflowInterceptor.java:33) at com.opensymphony.xwork.interceptor.MethodFilterInterceptor.intercept(MethodFilterInterceptor.java:86) at com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:190) at com.opensymphony.xwork.validator.ValidationInterceptor.doIntercept(ValidationInterceptor.java:115) at com.atlassian.bamboo.ww2.interceptors.BambooValidationInterceptor.doIntercept(BambooValidationInterceptor.java:33) at com.opensymphony.xwork.interceptor.MethodFilterInterceptor.intercept(MethodFilterInterceptor.java:86) at com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:190) at com.opensymphony.xwork.interceptor.AroundInterceptor.intercept(AroundInterceptor.java:31) at com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:190) at com.opensymphony.xwork.interceptor.AroundInterceptor.intercept(AroundInterceptor.java:31) at com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:190) at com.opensymphony.xwork.interceptor.AroundInterceptor.intercept(AroundInterceptor.java:31) at com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:190) at com.opensymphony.webwork.interceptor.FileUploadInterceptor.intercept(FileUploadInterceptor.java:174) at com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:190) at com.opensymphony.xwork.interceptor.AroundInterceptor.intercept(AroundInterceptor.java:31) at com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:190) at com.opensymphony.xwork.interceptor.AroundInterceptor.intercept(AroundInterceptor.java:31) at com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:190) at com.opensymphony.xwork.interceptor.AroundInterceptor.intercept(AroundInterceptor.java:31) at com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:190) at com.opensymphony.xwork.interceptor.I18nInterceptor.intercept(I18nInterceptor.java:151) at com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:190) at com.opensymphony.xwork.interceptor.AroundInterceptor.intercept(AroundInterceptor.java:31) at com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:190) at com.atlassian.bamboo.security.acegi.intercept.web.WebworkSecurityInterceptor.intercept(WebworkSecurityInterceptor.java:55) at com.atlassian.bamboo.security.acegi.intercept.web.WebworkSecurityInterceptorProxy.intercept(WebworkSecurityInterceptorProxy.java:30) at com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:190) at com.atlassian.bamboo.ww2.interceptors.PaginationAwareInterceptor.intercept(PaginationAwareInterceptor.java:68) at com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:190) at com.atlassian.bamboo.ww2.interceptors.StatisticsAwareInterceptor.intercept(StatisticsAwareInterceptor.java:42) at com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:190) at com.atlassian.bamboo.ww2.interceptors.ResultsListAwareInterceptor.intercept(ResultsListAwareInterceptor.java:43) at com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:190) at com.atlassian.bamboo.ww2.interceptors.TestCaseAwareInterceptor.intercept(TestCaseAwareInterceptor.java:43) at com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:190) at com.atlassian.bamboo.ww2.interceptors.BuildAwareInterceptor.intercept(BuildAwareInterceptor.java:44) at com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:190) at com.opensymphony.xwork.interceptor.AroundInterceptor.intercept(AroundInterceptor.java:31) at com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:190) at com.opensymphony.xwork.interceptor.AroundInterceptor.intercept(AroundInterceptor.java:31) at com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:190) at com.opensymphony.xwork.interceptor.ExceptionMappingInterceptor.intercept(ExceptionMappingInterceptor.java:186) at com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:190) at com.opensymphony.xwork.DefaultActionProxy.execute(DefaultActionProxy.java:116) at com.opensymphony.webwork.dispatcher.DispatcherUtils.serviceAction(DispatcherUtils.java:225) at com.opensymphony.webwork.dispatcher.FilterDispatcher.doFilter(FilterDispatcher.java:202) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173) at com.opensymphony.module.sitemesh.filter.PageFilter.parsePage(PageFilter.java:118) at com.opensymphony.module.sitemesh.filter.PageFilter.doFilter(PageFilter.java:52) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173) at com.opensymphony.webwork.dispatcher.ActionContextCleanUp.doFilter(ActionContextCleanUp.java:88) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173) at org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:265) at org.acegisecurity.providers.anonymous.AnonymousProcessingFilter.doFilter(AnonymousProcessingFilter.java:125) at org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:275) at com.atlassian.bamboo.filter.SeraphLoginFilter.doFilter(SeraphLoginFilter.java:66) at org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:275) at org.acegisecurity.util.FilterChainProxy.doFilter(FilterChainProxy.java:149) at org.acegisecurity.util.FilterToBeanProxy.doFilter(FilterToBeanProxy.java:98) at com.atlassian.bamboo.filter.BambooAcegiProxyFilter.doFilter(BambooAcegiProxyFilter.java:25) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173) at com.atlassian.bamboo.filter.LicenseFilter.doFilter(LicenseFilter.java:72) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173) at com.atlassian.johnson.filters.AbstractJohnsonFilter.doFilter(AbstractJohnsonFilter.java:72) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173) at com.atlassian.seraph.filter.SecurityFilter.doFilter(SecurityFilter.java:182) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173) at com.atlassian.seraph.filter.LoginFilter.doFilter(LoginFilter.java:177) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173) at org.springframework.orm.hibernate.support.OpenSessionInViewFilter.doFilterInternal(OpenSessionInViewFilter.java:174) at com.atlassian.spring.filter.FlushingSpringSessionInViewFilter.doFilterInternal(FlushingSpringSessionInViewFilter.java:29) at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:77) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173) at com.planetj.servlet.filter.compression.CompressingFilter.handleDoFilter(CompressingFilter.java:203) at com.planetj.servlet.filter.compression.CompressingFilter.doFilter(CompressingFilter.java:193) at com.atlassian.bamboo.filter.CompressingFilter.doFilter(CompressingFilter.java:65) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173) at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:672) at org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:463) at org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:398) at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:301) at com.atlassian.bamboo.filter.UrlRewriteFilter.forwardTo(UrlRewriteFilter.java:296) at com.atlassian.bamboo.filter.UrlRewriteFilter.doFilter(UrlRewriteFilter.java:141) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173) at org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:75) at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:77) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173) at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:213) at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:178) at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:126) at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:105) at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:107) at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:148) at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:869) at org.apache.coyote.http11.Http11BaseProtocol$Http11ConnectionHandler.processConnection(Http11BaseProtocol.java:664) at org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpoint.java:527) at org.apache.tomcat.util.net.LeaderFollowerWorkerThread.runIt(LeaderFollowerWorkerThread.java:80) at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:684) at java.lang.Thread.run(Thread.java:595) Caused by: org.apache.lucene.search.BooleanQuery$TooManyClauses at org.apache.lucene.search.BooleanQuery.add(BooleanQuery.java:184) at org.apache.lucene.search.BooleanQuery.add(BooleanQuery.java:175) at org.apache.lucene.search.RangeQuery.rewrite(RangeQuery.java:94) at org.apache.lucene.search.BooleanQuery.rewrite(BooleanQuery.java:396) at org.apache.lucene.search.IndexSearcher.rewrite(IndexSearcher.java:137) at org.apache.lucene.search.Query.weight(Query.java:92) at org.apache.lucene.search.Searcher.createWeight(Searcher.java:169) at org.apache.lucene.search.Searcher.search(Searcher.java:116) at org.apache.lucene.search.Searcher.search(Searcher.java:95) at com.atlassian.bamboo.build.DefaultTestManager.queryTestCases(DefaultTestManager.java:157) at com.atlassian.bamboo.build.DefaultTestManager.getTestBrokenIn(DefaultTestManager.java:104) at com.atlassian.bamboo.build.BuildResultsAction.getFailingSinceForTest(BuildResultsAction.java:151) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) at java.lang.reflect.Method.invoke(Method.java:585) at freemarker.ext.beans.BeansWrapper.invokeMethod(BeansWrapper.java:616) at freemarker.ext.beans.SimpleMethodModel.exec(SimpleMethodModel.java:113) ... 147 more {noformat}

    Atlassian JIRA | 9 years ago | Adrian Hempel [Atlassian]
    freemarker.template.TemplateModelException: Method public com.atlassian.bamboo.resultsummary.BuildResultsSummary com.atlassian.bamboo.build.BuildResultsAction.getFailingSinceForTest(com.atlassian.bamboo.results.BuildResults,com.atlassian.bamboo.results.tests.TestResults) throws java.io.IOException threw an exception when invoked on com.atlassian.bamboo.build.ViewBuildResults@88f28f

    Not finding the right solution?
    Take a tour to get the most out of Samebug.

    Tired of useless tips?

    Automated exception search integrated into your IDE

    Root Cause Analysis

    1. org.apache.lucene.search.BooleanQuery$TooManyClauses

      No message provided

      at org.apache.lucene.search.BooleanQuery.add()
    2. Lucene
      Searcher.search
      1. org.apache.lucene.search.BooleanQuery.add(BooleanQuery.java:109)
      2. org.apache.lucene.search.BooleanQuery.add(BooleanQuery.java:101)
      3. org.apache.lucene.search.RangeQuery.rewrite(RangeQuery.java:137)
      4. org.apache.lucene.search.BooleanQuery.rewrite(BooleanQuery.java:244)
      5. org.apache.lucene.search.IndexSearcher.rewrite(IndexSearcher.java:188)
      6. org.apache.lucene.search.Query.weight(Query.java:120)
      7. org.apache.lucene.search.IndexSearcher.search(IndexSearcher.java:128)
      8. org.apache.lucene.search.MultiSearcher.search(MultiSearcher.java:150)
      9. org.apache.lucene.search.Hits.getMoreDocs(Hits.java:93)
      10. org.apache.lucene.search.Hits.<init>(Hits.java:80)
      11. org.apache.lucene.search.Searcher.search(Searcher.java:71)
      12. org.apache.lucene.search.Searcher.search(Searcher.java:65)
      12 frames
    3. com.atlassian.jira
      IssueNavigator.doExecute
      1. com.atlassian.jira.issue.search.providers.LuceneSearchProvider.search(LuceneSearchProvider.java:75)
      2. com.atlassian.jira.issue.search.providers.DefaultSearchProvider.search(DefaultSearchProvider.java:43)
      3. com.atlassian.jira.issue.managers.DefaultIssueManager.execute(DefaultIssueManager.java:144)
      4. com.atlassian.jira.issue.managers.CachingIssueManager.execute(CachingIssueManager.java:82)
      5. com.atlassian.jira.web.action.issue.IssueNavigator.getBrowsableItems(IssueNavigator.java:370)
      6. com.atlassian.jira.web.action.issue.IssueNavigator.doExecute(IssueNavigator.java:258)
      6 frames
    4. webwork.action
      ActionSupport.execute
      1. webwork.action.ActionSupport.execute(ActionSupport.java:154)
      1 frame
    5. com.atlassian.jira
      JiraActionSupport.execute
      1. com.atlassian.jira.action.JiraActionSupport.execute(JiraActionSupport.java:46)
      1 frame
    6. webwork.dispatcher
      GenericDispatcher.executeAction
      1. webwork.dispatcher.GenericDispatcher.executeAction(GenericDispatcher.java:131)
      1 frame
    7. com.atlassian.jira
      JiraServletDispatcher.service
      1. com.atlassian.jira.web.dispatcher.JiraServletDispatcher.service(JiraServletDispatcher.java:181)
      1 frame
    8. JavaServlet
      HttpServlet.service
      1. javax.servlet.http.HttpServlet.service(HttpServlet.java:856)
      1 frame