Uploaded image for project: 'Confluence Data Center'
  1. Confluence Data Center
  2. CONFSERVER-8894

The space name and key lengths are not being validated

    XMLWordPrintable

Details

    • Bug
    • Resolution: Obsolete
    • Low
    • None
    • 2.5.4
    • None
    • db: mysql 4.x

    Description

      If one tries to create a space with space key is longer that 255 characters and exception is thrown:

      Cause:
      org.springframework.jdbc.UncategorizedSQLException: (Hibernate operation): encountered SQLException [Data truncation: Data too long for column 'SPACEKEY' at row 1]; nested exception is java.sql.BatchUpdateException: Data truncation: Data too long for column 'SPACEKEY' at row 1
      at org.springframework.jdbc.support.SQLStateSQLExceptionTranslator.translate(SQLStateSQLExceptionTranslator.java:99)
      caused by: java.sql.BatchUpdateException: Data truncation: Data too long for column 'SPACEKEY' at row 1
      at com.mysql.jdbc.PreparedStatement.executeBatchSerially(PreparedStatement.java:1237)

      Stack Trace: [hide]

      org.springframework.jdbc.UncategorizedSQLException: (Hibernate operation): encountered SQLException [Data truncation: Data too long for column 'SPACEKEY' at row 1]; nested exception is java.sql.BatchUpdateException: Data truncation: Data too long for column 'SPACEKEY' at row 1
      java.sql.BatchUpdateException: Data truncation: Data too long for column 'SPACEKEY' at row 1
      at com.mysql.jdbc.PreparedStatement.executeBatchSerially(PreparedStatement.java:1237)
      at com.mysql.jdbc.PreparedStatement.executeBatch(PreparedStatement.java:936)
      at com.mchange.v2.c3p0.impl.NewProxyPreparedStatement.executeBatch(NewProxyPreparedStatement.java:1723)
      at net.sf.hibernate.impl.BatchingBatcher.doExecuteBatch(BatchingBatcher.java:54)
      at net.sf.hibernate.impl.BatcherImpl.executeBatch(BatcherImpl.java:128)
      at net.sf.hibernate.impl.BatcherImpl.prepareStatement(BatcherImpl.java:61)
      at net.sf.hibernate.impl.BatcherImpl.prepareStatement(BatcherImpl.java:58)
      at net.sf.hibernate.impl.BatcherImpl.prepareBatchStatement(BatcherImpl.java:111)
      at net.sf.hibernate.persister.EntityPersister.insert(EntityPersister.java:454)
      at net.sf.hibernate.persister.EntityPersister.insert(EntityPersister.java:436)
      at net.sf.hibernate.impl.ScheduledInsertion.execute(ScheduledInsertion.java:37)
      at net.sf.hibernate.impl.SessionImpl.execute(SessionImpl.java:2449)
      at net.sf.hibernate.impl.SessionImpl.executeAll(SessionImpl.java:2435)
      at net.sf.hibernate.impl.SessionImpl.execute(SessionImpl.java:2392)
      at net.sf.hibernate.impl.SessionImpl.autoFlushIfRequired(SessionImpl.java:1821)
      at net.sf.hibernate.impl.SessionImpl.getQueries(SessionImpl.java:1578)
      at net.sf.hibernate.impl.SessionImpl.find(SessionImpl.java:1543)
      at net.sf.hibernate.impl.QueryImpl.list(QueryImpl.java:49)
      at org.springframework.orm.hibernate.HibernateTemplate$25.doInHibernate(HibernateTemplate.java:641)
      at org.springframework.orm.hibernate.HibernateTemplate.execute(HibernateTemplate.java:312)
      at org.springframework.orm.hibernate.HibernateTemplate.find(HibernateTemplate.java:631)
      at org.springframework.orm.hibernate.HibernateTemplate.find(HibernateTemplate.java:626)
      at bucket.search.persistence.dao.hibernate.HibernateIndexQueueEntryDao.getNewEntries(HibernateIndexQueueEntryDao.java:43)
      at com.atlassian.confluence.search.lucene.queue.DatabaseIndexTaskQueue.getUnflushedEntries(DatabaseIndexTaskQueue.java:147)
      at com.atlassian.confluence.search.lucene.queue.DatabaseIndexTaskQueue.flushQueue(DatabaseIndexTaskQueue.java:131)
      at com.atlassian.confluence.search.lucene.DefaultConfluenceIndexManager.flushQueue(DefaultConfluenceIndexManager.java:106)
      at sun.reflect.GeneratedMethodAccessor270.invoke(Unknown Source)
      at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
      at java.lang.reflect.Method.invoke(Method.java:585)
      at org.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:284)
      at org.springframework.aop.framework.ReflectiveMethodInvocation.invokeJoinpoint(ReflectiveMethodInvocation.java:155)
      at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:122)
      at org.springframework.transaction.interceptor.TransactionInterceptor.invoke(TransactionInterceptor.java:56)
      at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:144)
      at org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:174)
      at $Proxy22.flushQueue(Unknown Source)
      at com.atlassian.confluence.spaces.actions.CreateSpaceAction.execute(CreateSpaceAction.java:79)
      at com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:168)
      at com.opensymphony.xwork.interceptor.AroundInterceptor.intercept(AroundInterceptor.java:35)
      at com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:165)
      at com.opensymphony.xwork.interceptor.DefaultWorkflowInterceptor.intercept(DefaultWorkflowInterceptor.java:55)
      at com.atlassian.confluence.core.ConfluenceWorkflowInterceptor.intercept(ConfluenceWorkflowInterceptor.java:39)
      at com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:165)
      at com.opensymphony.xwork.interceptor.AroundInterceptor.intercept(AroundInterceptor.java:35)
      at com.atlassian.confluence.core.ConfluenceValidationInterceptor.intercept(ConfluenceValidationInterceptor.java:16)
      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.LoggingContextInterceptor.intercept(LoggingContextInterceptor.java:48)
      at com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:165)
      at com.atlassian.confluence.security.actions.PermissionCheckInterceptor.intercept(PermissionCheckInterceptor.java:47)
      at com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:165)
      at com.atlassian.confluence.pages.actions.PageAwareInterceptor.intercept(PageAwareInterceptor.java:114)
      at com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:165)
      at com.atlassian.confluence.spaces.actions.SpaceAwareInterceptor.intercept(SpaceAwareInterceptor.java:67)
      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.actions.LastModifiedInterceptor.intercept(LastModifiedInterceptor.java:39)
      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.xwork.interceptors.XWorkTransactionInterceptor.intercept(XWorkTransactionInterceptor.java:98)
      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:917)
      at org.apache.catalina.core.ApplicationFilterChain.servletService(ApplicationFilterChain.java:398)
      at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:304)
      at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:185)
      at com.opensymphony.module.sitemesh.filter.PageFilter.parsePage(PageFilter.java:117)
      at com.atlassian.confluence.util.profiling.ProfilingPageFilter.parsePage(ProfilingPageFilter.java:137)
      at com.opensymphony.module.sitemesh.filter.PageFilter.doFilter(PageFilter.java:51)
      at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:217)
      at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:185)
      at com.atlassian.core.filters.ServletContextThreadLocalFilter.doFilter(ServletContextThreadLocalFilter.java:21)
      at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:217)
      at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:185)
      at com.atlassian.confluence.util.LoggingContextFilter.doFilter(LoggingContextFilter.java:46)
      at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:217)
      at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:185)
      at com.atlassian.confluence.util.UserThreadLocalFilter.doFilter(UserThreadLocalFilter.java:44)
      at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:217)
      at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:185)
      at com.atlassian.seraph.filter.SecurityFilter.doFilter(SecurityFilter.java:182)
      at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:217)
      at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:185)
      at com.atlassian.seraph.filter.LoginFilter.doFilter(LoginFilter.java:159)
      at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:217)
      at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:185)
      at com.atlassian.confluence.util.ClusterHeaderFilter.doFilter(ClusterHeaderFilter.java:35)
      at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:217)
      at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:185)
      at com.atlassian.johnson.filters.JohnsonFilter.doFilter(JohnsonFilter.java:96)
      at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:217)
      at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:185)
      at org.springframework.orm.hibernate.support.OpenSessionInViewFilter.doFilterInternal(OpenSessionInViewFilter.java:172)
      at com.atlassian.spring.filter.FlushingSpringSessionInViewFilter.doFilterInternal(FlushingSpringSessionInViewFilter.java:29)
      at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:76)
      at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:217)
      at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:185)
      at com.atlassian.util.profiling.filters.ProfilingFilter.doFilter(ProfilingFilter.java:122)
      at com.atlassian.core.filters.ProfilingAndErrorFilter.doFilter(ProfilingAndErrorFilter.java:27)
      at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:217)
      at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:185)
      at com.atlassian.confluence.util.RequestCacheThreadLocalFilter.doFilter(RequestCacheThreadLocalFilter.java:25)
      at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:217)
      at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:185)
      at com.atlassian.core.filters.gzip.GzipFilter.doFilter(GzipFilter.java:61)
      at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:217)
      at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:185)
      at com.atlassian.core.filters.AbstractEncodingFilter.doFilter(AbstractEncodingFilter.java:37)
      at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:217)
      at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:185)
      at com.sun.dse.wikis.auth.SsoFilter.doFilter(SsoFilter.java:145)
      at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:217)
      at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:185)
      at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:275)
      at org.apache.catalina.core.StandardContextValve.invokeInternal(StandardContextValve.java:255)
      at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:188)
      at org.apache.catalina.core.StandardPipeline.doInvoke(StandardPipeline.java:586)
      at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:556)
      at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:187)
      at org.apache.catalina.core.StandardPipeline.doInvoke(StandardPipeline.java:586)
      at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:556)
      at com.sun.webserver.connector.nsapi.NSAPIProcessor.service(NSAPIProcessor.java:160)
      Referer URL: http://myhost:8080/wikis/spaces/createspace-start.action

      Similar exception is thrown when the space title is longer than 255 chars as well:

      Cause:
      org.springframework.jdbc.UncategorizedSQLException: (Hibernate operation): encountered SQLException [Data truncation: Data too long for column 'SPACENAME' at row 1]; nested exception is java.sql.BatchUpdateException: Data truncation: Data too long for column 'SPACENAME' at row 1
      at org.springframework.jdbc.support.SQLStateSQLExceptionTranslator.translate(SQLStateSQLExceptionTranslator.java:99)
      caused by: java.sql.BatchUpdateException: Data truncation: Data too long for column 'SPACENAME' at row 1
      at com.mysql.jdbc.PreparedStatement.executeBatchSerially(PreparedStatement.java:1237)

      Stack Trace: [hide]

      org.springframework.jdbc.UncategorizedSQLException: (Hibernate operation): encountered SQLException [Data truncation: Data too long for column 'SPACENAME' at row 1]; nested exception is java.sql.BatchUpdateException: Data truncation: Data too long for column 'SPACENAME' at row 1
      java.sql.BatchUpdateException: Data truncation: Data too long for column 'SPACENAME' at row 1
      at com.mysql.jdbc.PreparedStatement.executeBatchSerially(PreparedStatement.java:1237)
      ...

      Attachments

        Activity

          People

            Unassigned Unassigned
            15d9a6950818 Igor Minar
            Votes:
            0 Vote for this issue
            Watchers:
            1 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved:

              Time Tracking

                Estimated:
                Original Estimate - 0.5h
                0.5h
                Remaining:
                Remaining Estimate - 0.5h
                0.5h
                Logged:
                Time Spent - Not Specified
                Not Specified