XMLWordPrintable

Details

    • Bug
    • Resolution: Won't Fix
    • High
    • None
    • 1.1
    • None
    • RedHat 9, IBM JDK 1.4.1, DB2 8.1.5, Type-2 Legacy-CLI JDBC driver (COM.ibm.db2.jdbc.app.DB2Driver)

    Description

      Displaying space summary results in an SQLException (see below) even though there are no visible problems with the page. I've increased priority to this bug to "Critical" because I cannot assess if there are other parts of Confluence code that will have the same problem with DB2 so feel free to reduce priority. From DB2 trace it appears that this exception is caused by some seriously broken SQL statement that looks like

      <quote>
      select * from (
      rownumber() over(order by content.LASTMODDATE desc
      ) as row_, SELECT content.CONTENTID as CONTENTID0_, content.CONTENTTYPE as CONTENTT2_0_, content.TITLE as TITLE0_, content.BODY as BODY0_, content.VERSION as VERSION0_, content.CREATOR as CREATOR0_, content.CREATIONDATE as CREATION7_0_, content.LASTMODIFIER as LASTMODI8_0_, content.LASTMODDATE as LASTMODD9_0_, content.PREVVER as PREVVER0_, content.SPACEID as SPACEID0_, content.PARENTID as PARENTID0_, content.BLOGSPACEID as BLOGSPA13_0_, content.DESCSPACEID as DESCSPA14_0_, content.PAGEID as PAGEID0_, content.USERNAME as USERNAME0_ from CONTENT content, SPACES
      where (content.SPACEID = SPACES.SPACEID or
      content.BLOGSPACEID = SPACES.SPACEID or
      content.DESCSPACEID = SPACES.SPACEID)
      and SPACES.SPACEKEY = ?
      order by content.LASTMODDATE desc
      ) as temp_ where row_ <= ?
      </quote>

      Here is the exception

      Jun 11, 2004 11:39:35 AM net.sf.hibernate.JDBCException <init>
      SEVERE: SQLException occurred
      COM.ibm.db2.jdbc.DB2Exception: [IBM][CLI Driver][DB2/LINUX] SQL0104N An unexpected token "rownumber" was found following "select * from (". Expected tokens may include: "SELECT". SQLSTATE=42601

      at COM.ibm.db2.jdbc.app.SQLExceptionGenerator.throw_SQLException(SQLExceptionGenerator.java:273)
      at COM.ibm.db2.jdbc.app.SQLExceptionGenerator.throw_SQLException(SQLExceptionGenerator.java:215)
      at COM.ibm.db2.jdbc.app.SQLExceptionGenerator.check_return_code(SQLExceptionGenerator.java:440)
      at COM.ibm.db2.jdbc.app.DB2PreparedStatement.execute2(DB2PreparedStatement.java:2199)
      at COM.ibm.db2.jdbc.app.DB2PreparedStatement.executeQuery(DB2PreparedStatement.java:1694)
      at com.mchange.v2.sql.filter.FilterPreparedStatement.executeQuery(FilterPreparedStatement.java:68)
      at com.mchange.v2.c3p0.impl.C3P0PooledConnection$2.executeQuery(C3P0PooledConnection.java:561)
      at net.sf.hibernate.impl.BatcherImpl.getResultSet(BatcherImpl.java:87)
      at net.sf.hibernate.loader.Loader.getResultSet(Loader.java:795)
      at net.sf.hibernate.loader.Loader.doQuery(Loader.java:189)
      at net.sf.hibernate.loader.Loader.doQueryAndInitializeNonLazyCollections(Loader.java:133)
      at net.sf.hibernate.loader.Loader.doList(Loader.java:950)
      at net.sf.hibernate.loader.Loader.list(Loader.java:935)
      at net.sf.hibernate.loader.SQLLoader.list(SQLLoader.java:92)
      at net.sf.hibernate.impl.SessionImpl.findBySQL(SessionImpl.java:3764)
      at net.sf.hibernate.impl.SQLQueryImpl.list(SQLQueryImpl.java:52)
      at com.atlassian.confluence.core.persistence.hibernate.ContentEntityObjectHibernateDao$3.doInHibernate(ContentEntityObjectHibernateDao.java:74)
      at org.springframework.orm.hibernate.HibernateTemplate.execute(HibernateTemplate.java:150)
      at com.atlassian.confluence.core.persistence.hibernate.ContentEntityObjectHibernateDao.getRecentlyModifiedEntities(ContentEntityObjectHibernateDao.java:65)
      at com.atlassian.confluence.core.DefaultContentEntityManager.getRecentlyModifiedEntities(DefaultContentEntityManager.java:109)
      at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
      at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:79)
      at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java(Compiled Code))
      at java.lang.reflect.Method.invoke(Method.java(Compiled Code))
      at org.springframework.aop.framework.AopProxyUtils.invokeJoinpointUsingReflection(AopProxyUtils.java:59)
      at org.springframework.aop.framework.ReflectiveMethodInvocation.invokeJoinpoint(ReflectiveMethodInvocation.java:149)
      at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:118)
      at org.springframework.transaction.interceptor.TransactionInterceptor.invoke(TransactionInterceptor.java:191)
      at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:138)
      at org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:148)
      at $Proxy6.getRecentlyModifiedEntities(Unknown Source)
      at com.atlassian.confluence.spaces.actions.ViewSpaceAction.getRecentlyUpdatedContent(ViewSpaceAction.java:99)
      at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
      at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:79)
      at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java(Compiled Code))
      at java.lang.reflect.Method.invoke(Method.java(Compiled Code))
      at ognl.OgnlRuntime.invokeMethod(OgnlRuntime.java:491)
      at ognl.OgnlRuntime.getMethodValue(OgnlRuntime.java:904)
      at ognl.ObjectPropertyAccessor.getPossibleProperty(ObjectPropertyAccessor.java:54)
      at ognl.ObjectPropertyAccessor.getProperty(ObjectPropertyAccessor.java:122)
      at ognl.OgnlRuntime.getProperty(OgnlRuntime.java:1616)
      at com.opensymphony.xwork.util.CompoundRootAccessor.getProperty(CompoundRootAccessor.java:95)
      at ognl.OgnlRuntime.getProperty(OgnlRuntime.java:1616)
      at ognl.ASTProperty.getValueBody(ASTProperty.java:96)
      at ognl.SimpleNode.evaluateGetValueBody(SimpleNode.java:171)
      at ognl.SimpleNode.getValue(SimpleNode.java:193)
      at ognl.Ognl.getValue(Ognl.java:333)
      at ognl.Ognl.getValue(Ognl.java:310)
      at com.opensymphony.xwork.util.OgnlValueStack.findValue(OgnlValueStack.java:142)
      at sun.reflect.GeneratedMethodAccessor77.invoke(Unknown Source)
      at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java(Compiled Code))
      at java.lang.reflect.Method.invoke(Method.java(Compiled Code))
      at org.apache.velocity.runtime.parser.node.ASTMethod.execute(ASTMethod.java:260)
      at org.apache.velocity.runtime.parser.node.ASTReference.execute(ASTReference.java(Compiled Code))
      at org.apache.velocity.runtime.parser.node.ASTReference.value(ASTReference.java:357)
      at org.apache.velocity.runtime.parser.node.ASTSetDirective.render(ASTSetDirective.java:135)
      at org.apache.velocity.runtime.parser.node.SimpleNode.render(SimpleNode.java(Compiled Code))
      at org.apache.velocity.Template.merge(Template.java:296)
      at com.opensymphony.webwork.views.jsp.ui.AbstractUITag.mergeTemplate(AbstractUITag.java:328)
      at com.opensymphony.webwork.views.jsp.ui.AbstractUITag.doEndTag(AbstractUITag.java:131)
      at com.opensymphony.webwork.views.velocity.AbstractTagDirective.processTag(AbstractTagDirective.java:341)
      at com.opensymphony.webwork.views.velocity.AbstractTagDirective.render(AbstractTagDirective.java:124)
      at org.apache.velocity.runtime.parser.node.ASTDirective.render(ASTDirective.java:153)
      at org.apache.velocity.runtime.parser.node.ASTBlock.render(ASTBlock.java(Compiled Code))
      at org.apache.velocity.runtime.parser.node.ASTIfStatement.render(ASTIfStatement.java:109)
      at org.apache.velocity.runtime.parser.node.SimpleNode.render(SimpleNode.java(Compiled Code))
      at org.apache.velocity.Template.merge(Template.java:296)
      at com.opensymphony.webwork.dispatcher.VelocityResult.doExecute(VelocityResult.java:94)
      at bucket.util.profiling.ProfiledVelocityResult.doExecute(ProfiledVelocityResult.java:18)
      at com.opensymphony.webwork.dispatcher.WebWorkResultSupport.execute(WebWorkResultSupport.java:115)
      at com.opensymphony.xwork.DefaultActionInvocation.executeResult(DefaultActionInvocation.java:261)
      at com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:185)
      at com.opensymphony.xwork.interceptor.AroundInterceptor.intercept(AroundInterceptor.java:34)
      at com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:163)
      at com.opensymphony.xwork.interceptor.DefaultWorkflowInterceptor.intercept(DefaultWorkflowInterceptor.java:55)
      at com.atlassian.confluence.core.ConfluenceWorkflowInterceptor.intercept(ConfluenceWorkflowInterceptor.java:34)
      at com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:163)
      at com.opensymphony.xwork.interceptor.AroundInterceptor.intercept(AroundInterceptor.java:34)
      at com.atlassian.confluence.core.ConfluenceValidationInterceptor.intercept(ConfluenceValidationInterceptor.java:16)
      at com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:163)
      at com.opensymphony.xwork.interceptor.AroundInterceptor.intercept(AroundInterceptor.java:34)
      at com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:163)
      at com.atlassian.confluence.security.actions.PermissionCheckInterceptor.intercept(PermissionCheckInterceptor.java:40)
      at com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:163)
      at com.atlassian.confluence.pages.actions.PageAwareInterceptor.intercept(PageAwareInterceptor.java:73)
      at com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:163)
      at com.opensymphony.xwork.interceptor.AroundInterceptor.intercept(AroundInterceptor.java:34)
      at com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:163)
      at com.opensymphony.xwork.interceptor.AroundInterceptor.intercept(AroundInterceptor.java:34)
      at com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:163)
      at com.atlassian.confluence.core.ConfluenceAutowireInterceptor.intercept(ConfluenceAutowireInterceptor.java:25)
      at com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:163)
      at com.opensymphony.xwork.interceptor.AroundInterceptor.intercept(AroundInterceptor.java:34)
      at com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:163)
      at com.opensymphony.xwork.interceptor.AroundInterceptor.intercept(AroundInterceptor.java:34)
      at com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:163)
      at com.atlassian.confluence.util.XWorkTransactionInterceptor.intercept(XWorkTransactionInterceptor.java:124)
      at com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:163)
      at com.opensymphony.xwork.interceptor.AroundInterceptor.intercept(AroundInterceptor.java:34)
      at com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:163)
      at com.opensymphony.xwork.DefaultActionProxy.execute(DefaultActionProxy.java:115)
      at com.opensymphony.webwork.dispatcher.ServletDispatcher.serviceAction(ServletDispatcher.java:278)
      at com.opensymphony.webwork.dispatcher.ServletDispatcher.service(ServletDispatcher.java:248)
      at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
      at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:247)
      at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:193)
      at com.opensymphony.module.sitemesh.filter.PageFilter.parsePage(PageFilter.java:145)
      at com.atlassian.confluence.util.profiling.ProfilingPageFilter.parsePage(ProfilingPageFilter.java:146)
      at com.opensymphony.module.sitemesh.filter.PageFilter.doFilter(PageFilter.java:61)
      at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:213)
      at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:193)
      at com.atlassian.seraph.filter.SecurityFilter.doFilter(SecurityFilter.java:165)
      at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:213)
      at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:193)
      at com.atlassian.seraph.filter.LoginFilter.doFilter(LoginFilter.java:181)
      at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:213)
      at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:193)
      at com.atlassian.johnson.filters.JohnsonFilter.doFilter(JohnsonFilter.java:96)
      at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:213)
      at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:193)
      at org.springframework.orm.hibernate.support.OpenSessionInViewFilter.doFilterInternal(OpenSessionInViewFilter.java:117)
      at bucket.custom.FlushingSpringSessionInViewFilter.doFilterInternal(FlushingSpringSessionInViewFilter.java:30)
      at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:73)
      at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:213)
      at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:193)
      at com.atlassian.util.profiling.filters.ProfilingFilter.doFilter(ProfilingFilter.java:132)
      at com.atlassian.confluence.util.error.ProfilingAndErrorFilter.doFilter(ProfilingAndErrorFilter.java:25)
      at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:213)
      at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:193)
      at com.atlassian.core.filters.AbstractEncodingFilter.doFilter(AbstractEncodingFilter.java:38)
      at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:213)
      at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:193)
      at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:256)
      at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:643)
      at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:480)
      at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995)
      at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191)
      at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:643)
      at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:480)
      at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995)
      at org.apache.catalina.core.StandardContext.invoke(StandardContext.java:2417)
      at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:180)
      at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:643)
      at org.apache.catalina.valves.ErrorDispatcherValve.invoke(ErrorDispatcherValve.java:171)
      at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:641)
      at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:172)
      at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:641)
      at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:480)
      at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995)
      at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:174)
      at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:643)
      at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:480)
      at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995)
      at org.apache.coyote.tomcat4.CoyoteAdapter.service(CoyoteAdapter.java:193)
      at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:781)
      at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.processConnection(Http11Protocol.java:549)
      at org.apache.tomcat.util.net.TcpWorkerThread.runIt(PoolTcpEndpoint.java:589)
      at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:666)
      at java.lang.Thread.run(Thread.java:568)

      Attachments

        Activity

          People

            Unassigned Unassigned
            ca598156cdad Igor Fedorenko
            Votes:
            0 Vote for this issue
            Watchers:
            1 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: