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

Errors with database - can not save in Oracle

    XMLWordPrintable

Details

    • Bug
    • Resolution: Fixed
    • Highest
    • 1.1
    • 1.0.1
    • None
    • Linux Advanced Server, Sun JDK. Confluence in Standalone JIRA installation attached to Oracle 9i database.

    Description

      When trying to save a Confluence page, I sometimes get a "An error occured while trying to save the requested page." error and am unable to save the page.

      This error is random in that sometimes I am able to save a page, but if I have a specific document it occurs always if I do not delete some specific part of a document. Happened to me for several documents and these "parts" were different in those documents. No weird characters in those parts or anything like that.

      The error log (generated after I click "save") shows two errors:

      1) java.sql.SQLException: ORA-01453: SET TRANSACTION must be first statement of transaction

      at com.mchange.v2.c3p0.impl.C3P0PooledConnection$ProxyConnectionInvocationHandler.invoke(Ljava.lang.Object;Ljava.lang.reflect.Method;[Ljava.lang.Object;)Ljava.lang.Object;(C3P0PooledConnection.java:724)
      at com.mchange.v2.c3p0.impl.$Proxy0.setReadOnly(Z)V(Unknown Source)
      at org.springframework.orm.hibernate.HibernateTransactionManager.doBegin(Ljava.lang.Object;Lorg.springframework.transaction.TransactionDefinition;)V(HibernateTransactionManager.java:247)

      Which also occurs even without saving anything, just browsing and I have reported it at CONF-1027

      and then this error is followed by:

      2) [INFO] HibernateTransactionManager - -Initiating transaction commit
      [INFO] DefaultActionInvocation - -Executing action method = doEdit
      [INFO] HibernateTransactionManager - -Initiating transaction commit
      [WARN] JDBCExceptionReporter - -SQL Error: 17090, SQLState: null
      [ERROR] JDBCExceptionReporter - -operation not allowed: streams type cannot be used in batching
      java.sql.SQLException: operation not allowed: streams type cannot be used in batching
      at oracle.jdbc.dbaccess.DBError.throwSqlException(Ljava.lang.String;Ljava.lang.String;I)V(DBError.java:134)
      at oracle.jdbc.dbaccess.DBError.throwSqlException(ILjava.lang.Object;)V(DBError.java:179)
      at oracle.jdbc.driver.OraclePreparedStatement.addBatch()V(OraclePreparedStatement.java:3999)
      at com.mchange.v2.sql.filter.FilterPreparedStatement.addBatch()V(FilterPreparedStatement.java:74)
      at net.sf.hibernate.impl.BatchingBatcher.addToBatch(I)V(BatchingBatcher.java:30)
      at net.sf.hibernate.persister.EntityPersister.update(Ljava.io.Serializable;[Ljava.lang.Object;[Ljava.lang.Object;[ZLjava.lang.Object;Ljava.lang.Object;Ljava.lang.String;Lnet.sf.hibernate.engine.SessionImplementor;)V(EntityPersister.java:688)
      at net.sf.hibernate.persister.EntityPersister.update(Ljava.io.Serializable;[Ljava.lang.Object;[I[Ljava.lang.Object;Ljava.lang.Object;Ljava.lang.Object;Lnet.sf.hibernate.engine.SessionImplementor;)V(EntityPersister.java:641)
      at net.sf.hibernate.impl.ScheduledUpdate.execute()V(ScheduledUpdate.java:52)
      at net.sf.hibernate.impl.SessionImpl.executeAll(Ljava.util.List;)V(SessionImpl.java:2382)
      at net.sf.hibernate.impl.SessionImpl.execute()V(SessionImpl.java:2336)
      at net.sf.hibernate.impl.SessionImpl.flush()V(SessionImpl.java:2204)
      at net.sf.hibernate.transaction.JDBCTransaction.commit()V(JDBCTransaction.java:61)
      at org.springframework.orm.hibernate.HibernateTransactionManager.doCommit(Lorg.springframework.transaction.support.DefaultTransactionStatus;)V(HibernateTransactionManager.java:339)
      at org.springframework.transaction.support.AbstractPlatformTransactionManager.commit(Lorg.springframework.transaction.TransactionStatus;)V(AbstractPlatformTransactionManager.java:302)
      at org.springframework.transaction.interceptor.TransactionInterceptor.invoke(Lorg.aopalliance.intercept.MethodInvocation;)Ljava.lang.Object;(TransactionInterceptor.java:174)
      at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed()Ljava.lang.Object;(ReflectiveMethodInvocation.java:196)
      at org.springframework.aop.framework.JdkDynamicAopProxy.invoke(Ljava.lang.Object;Ljava.lang.reflect.Method;[Ljava.lang.Object;)Ljava.lang.Object;(JdkDynamicAopProxy.java:135)
      at $Proxy3.saveContentEntity(Lcom.atlassian.confluence.core.ContentEntityObject;Lcom.atlassian.confluence.core.ContentEntityObject;)V(Unknown Source)
      at com.atlassian.confluence.pages.actions.AbstractEditPageAction.saveModifiedPage()V(AbstractEditPageAction.java:108)
      at com.atlassian.confluence.pages.actions.EditPageAction.saveModifiedPage()V(EditPageAction.java:24)
      at com.atlassian.confluence.pages.actions.AbstractEditPageAction.doEdit()Ljava.lang.String;(AbstractEditPageAction.java:94)
      at COM.jrockit.reflect.NativeMethodInvoker.invoke0(ILjava.lang.Object;[Ljava.lang.Object;)Ljava.lang.Object;(Native Method)
      at COM.jrockit.reflect.NativeMethodInvoker.invoke(Ljava.lang.Object;[Ljava.lang.Object;)Ljava.lang.Object;(Unknown Source)
      at COM.jrockit.reflect.VirtualNativeMethodInvoker.invoke(Ljava.lang.Object;[Ljava.lang.Object;)Ljava.lang.Object;(Unknown Source)
      at java.lang.reflect.Method.invoke(Ljava.lang.Object;[Ljava.lang.Object;I)Ljava.lang.Object;(Unknown Source)
      at com.opensymphony.xwork.DefaultActionInvocation.invokeAction(Lcom.opensymphony.xwork.Action;Lcom.opensymphony.xwork.config.entities.ActionConfig;)Ljava.lang.String;(DefaultActionInvocation.java:308)
      at com.opensymphony.xwork.DefaultActionInvocation.invoke()Ljava.lang.String;(DefaultActionInvocation.java:173)
      at com.opensymphony.xwork.interceptor.AroundInterceptor.intercept(Lcom.opensymphony.xwork.ActionInvocation;)Ljava.lang.String;(AroundInterceptor.java:37)
      at com.opensymphony.xwork.DefaultActionInvocation.invoke()Ljava.lang.String;(DefaultActionInvocation.java:168)
      at com.opensymphony.xwork.interceptor.DefaultWorkflowInterceptor.intercept(Lcom.opensymphony.xwork.ActionInvocation;)Ljava.lang.String;(DefaultWorkflowInterceptor.java:58)
      at com.atlassian.confluence.core.ConfluenceWorkflowInterceptor.intercept(Lcom.opensymphony.xwork.ActionInvocation;)Ljava.lang.String;(ConfluenceWorkflowInterceptor.java:32)
      at com.opensymphony.xwork.DefaultActionInvocation.invoke()Ljava.lang.String;(DefaultActionInvocation.java:168)
      [ERROR] JDBCExceptionReporter - -could not update: com.atlassian.confluence.pages.Page#82 <java.sql.SQLException: operation not allowed: streams type cannot be used in batching>
      net.sf.hibernate.JDBCException: could not update: com.atlassian.confluence.pages.Page#82
      at net.sf.hibernate.persister.EntityPersister.update(Ljava.io.Serializable;[Ljava.lang.Object;[Ljava.lang.Object;[ZLjava.lang.Object;Ljava.lang.Object;Ljava.lang.String;Lnet.sf.hibernate.engine.SessionImplementor;)V(EntityPersister.java:706)
      at net.sf.hibernate.persister.EntityPersister.update(Ljava.io.Serializable;[Ljava.lang.Object;[I[Ljava.lang.Object;Ljava.lang.Object;Ljava.lang.Object;Lnet.sf.hibernate.engine.SessionImplementor;)V(EntityPersister.java:641)
      at net.sf.hibernate.impl.ScheduledUpdate.execute()V(ScheduledUpdate.java:52)
      at net.sf.hibernate.impl.SessionImpl.executeAll(Ljava.util.List;)V(SessionImpl.java:2382)
      at net.sf.hibernate.impl.SessionImpl.execute()V(SessionImpl.java:2336)
      at net.sf.hibernate.impl.SessionImpl.flush()V(SessionImpl.java:2204)
      at net.sf.hibernate.transaction.JDBCTransaction.commit()V(JDBCTransaction.java:61)
      at org.springframework.orm.hibernate.HibernateTransactionManager.doCommit(Lorg.springframework.transaction.support.DefaultTransactionStatus;)V(HibernateTransactionManager.java:339)
      at org.springframework.transaction.support.AbstractPlatformTransactionManager.commit(Lorg.springframework.transaction.TransactionStatus;)V(AbstractPlatformTransactionManager.java:302)
      at org.springframework.transaction.interceptor.TransactionInterceptor.invoke(Lorg.aopalliance.intercept.MethodInvocation;)Ljava.lang.Object;(TransactionInterceptor.java:174)
      at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed()Ljava.lang.Object;(ReflectiveMethodInvocation.java:196)
      at org.springframework.aop.framework.JdkDynamicAopProxy.invoke(Ljava.lang.Object;Ljava.lang.reflect.Method;[Ljava.lang.Object;)Ljava.lang.Object;(JdkDynamicAopProxy.java:135)
      at $Proxy3.saveContentEntity(Lcom.atlassian.confluence.core.ContentEntityObject;Lcom.atlassian.confluence.core.ContentEntityObject;)V(Unknown Source)
      at com.atlassian.confluence.pages.actions.AbstractEditPageAction.saveModifiedPage()V(AbstractEditPageAction.java:108)
      at com.atlassian.confluence.pages.actions.EditPageAction.saveModifiedPage()V(EditPageAction.java:24)
      at com.atlassian.confluence.pages.actions.AbstractEditPageAction.doEdit()Ljava.lang.String;(AbstractEditPageAction.java:94)
      at COM.jrockit.reflect.NativeMethodInvoker.invoke0(ILjava.lang.Object;[Ljava.lang.Object;)Ljava.lang.Object;(Native Method)
      at COM.jrockit.reflect.NativeMethodInvoker.invoke(Ljava.lang.Object;[Ljava.lang.Object;)Ljava.lang.Object;(Unknown Source)
      at COM.jrockit.reflect.VirtualNativeMethodInvoker.invoke(Ljava.lang.Object;[Ljava.lang.Object;)Ljava.lang.Object;(Unknown Source)
      at java.lang.reflect.Method.invoke(Ljava.lang.Object;[Ljava.lang.Object;I)Ljava.lang.Object;(Unknown Source)
      at com.opensymphony.xwork.DefaultActionInvocation.invokeAction(Lcom.opensymphony.xwork.Action;Lcom.opensymphony.xwork.config.entities.ActionConfig;)Ljava.lang.String;(DefaultActionInvocation.java:308)
      at com.opensymphony.xwork.DefaultActionInvocation.invoke()Ljava.lang.String;(DefaultActionInvocation.java:173)
      at com.opensymphony.xwork.interceptor.AroundInterceptor.intercept(Lcom.opensymphony.xwork.ActionInvocation;)Ljava.lang.String;(AroundInterceptor.java:37)
      at com.opensymphony.xwork.DefaultActionInvocation.invoke()Ljava.lang.String;(DefaultActionInvocation.java:168)
      at com.opensymphony.xwork.interceptor.DefaultWorkflowInterceptor.intercept(Lcom.opensymphony.xwork.ActionInvocation;)Ljava.lang.String;(DefaultWorkflowInterceptor.java:58)
      at com.atlassian.confluence.core.ConfluenceWorkflowInterceptor.intercept(Lcom.opensymphony.xwork.ActionInvocation;)Ljava.lang.String;(ConfluenceWorkflowInterceptor.java:32)
      at com.opensymphony.xwork.DefaultActionInvocation.invoke()Ljava.lang.String;(DefaultActionInvocation.java:168)
      at com.opensymphony.xwork.interceptor.AroundInterceptor.intercept(Lcom.opensymphony.xwork.ActionInvocation;)Ljava.lang.String;(AroundInterceptor.java:37)
      at com.atlassian.confluence.core.ConfluenceValidationInterceptor.intercept(Lcom.opensymphony.xwork.ActionInvocation;)Ljava.lang.String;(ConfluenceValidationInterceptor.java:18)
      at com.opensymphony.xwork.DefaultActionInvocation.invoke()Ljava.lang.String;(DefaultActionInvocation.java:168)
      at com.opensymphony.xwork.interceptor.AroundInterceptor.intercept(Lcom.opensymphony.xwork.ActionInvocation;)Ljava.lang.String;(AroundInterceptor.java:37)
      at com.opensymphony.xwork.DefaultActionInvocation.invoke()Ljava.lang.String;(DefaultActionInvocation.java:168)
      Caused by: java.sql.SQLException: operation not allowed: streams type cannot be used in batching
      at oracle.jdbc.dbaccess.DBError.throwSqlException(Ljava.lang.String;Ljava.lang.String;I)V(DBError.java:134)
      at oracle.jdbc.dbaccess.DBError.throwSqlException(ILjava.lang.Object;)V(DBError.java:179)
      at oracle.jdbc.driver.OraclePreparedStatement.addBatch()V(OraclePreparedStatement.java:3999)
      at com.mchange.v2.sql.filter.FilterPreparedStatement.addBatch()V(FilterPreparedStatement.java:74)
      at net.sf.hibernate.impl.BatchingBatcher.addToBatch(I)V(BatchingBatcher.java:30)
      at net.sf.hibernate.persister.EntityPersister.update(Ljava.io.Serializable;[Ljava.lang.Object;[Ljava.lang.Object;[ZLjava.lang.Object;Ljava.lang.Object;Ljava.lang.String;Lnet.sf.hibernate.engine.SessionImplementor;)V(EntityPersister.java:688)
      at net.sf.hibernate.persister.EntityPersister.update(Ljava.io.Serializable;[Ljava.lang.Object;[I[Ljava.lang.Object;Ljava.lang.Object;Ljava.lang.Object;Lnet.sf.hibernate.engine.SessionImplementor;)V(EntityPersister.java:641)
      at net.sf.hibernate.impl.ScheduledUpdate.execute()V(ScheduledUpdate.java:52)
      at net.sf.hibernate.impl.SessionImpl.executeAll(Ljava.util.List;)V(SessionImpl.java:2382)
      at net.sf.hibernate.impl.SessionImpl.execute()V(SessionImpl.java:2336)
      at net.sf.hibernate.impl.SessionImpl.flush()V(SessionImpl.java:2204)
      at net.sf.hibernate.transaction.JDBCTransaction.commit()V(JDBCTransaction.java:61)
      at org.springframework.orm.hibernate.HibernateTransactionManager.doCommit(Lorg.springframework.transaction.support.DefaultTransactionStatus;)V(HibernateTransactionManager.java:339)
      at org.springframework.transaction.support.AbstractPlatformTransactionManager.commit(Lorg.springframework.transaction.TransactionStatus;)V(AbstractPlatformTransactionManager.java:302)
      at org.springframework.transaction.interceptor.TransactionInterceptor.invoke(Lorg.aopalliance.intercept.MethodInvocation;)Ljava.lang.Object;(TransactionInterceptor.java:174)
      at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed()Ljava.lang.Object;(ReflectiveMethodInvocation.java:196)
      at org.springframework.aop.framework.JdkDynamicAopProxy.invoke(Ljava.lang.Object;Ljava.lang.reflect.Method;[Ljava.lang.Object;)Ljava.lang.Object;(JdkDynamicAopProxy.java:135)
      at $Proxy3.saveContentEntity(Lcom.atlassian.confluence.core.ContentEntityObject;Lcom.atlassian.confluence.core.ContentEntityObject;)V(Unknown Source)
      at com.atlassian.confluence.pages.actions.AbstractEditPageAction.saveModifiedPage()V(AbstractEditPageAction.java:108)
      at com.atlassian.confluence.pages.actions.EditPageAction.saveModifiedPage()V(EditPageAction.java:24)
      at com.atlassian.confluence.pages.actions.AbstractEditPageAction.doEdit()Ljava.lang.String;(AbstractEditPageAction.java:94)
      at COM.jrockit.reflect.NativeMethodInvoker.invoke0(ILjava.lang.Object;[Ljava.lang.Object;)Ljava.lang.Object;(Native Method)
      at COM.jrockit.reflect.NativeMethodInvoker.invoke(Ljava.lang.Object;[Ljava.lang.Object;)Ljava.lang.Object;(Unknown Source)
      at COM.jrockit.reflect.VirtualNativeMethodInvoker.invoke(Ljava.lang.Object;[Ljava.lang.Object;)Ljava.lang.Object;(Unknown Source)
      at java.lang.reflect.Method.invoke(Ljava.lang.Object;[Ljava.lang.Object;I)Ljava.lang.Object;(Unknown Source)
      at com.opensymphony.xwork.DefaultActionInvocation.invokeAction(Lcom.opensymphony.xwork.Action;Lcom.opensymphony.xwork.config.entities.ActionConfig;)Ljava.lang.String;(DefaultActionInvocation.java:308)
      at com.opensymphony.xwork.DefaultActionInvocation.invoke()Ljava.lang.String;(DefaultActionInvocation.java:173)
      at com.opensymphony.xwork.interceptor.AroundInterceptor.intercept(Lcom.opensymphony.xwork.ActionInvocation;)Ljava.lang.String;(AroundInterceptor.java:37)
      at com.opensymphony.xwork.DefaultActionInvocation.invoke()Ljava.lang.String;(DefaultActionInvocation.java:168)
      at com.opensymphony.xwork.interceptor.DefaultWorkflowInterceptor.intercept(Lcom.opensymphony.xwork.ActionInvocation;)Ljava.lang.String;(DefaultWorkflowInterceptor.java:58)
      at com.atlassian.confluence.core.ConfluenceWorkflowInterceptor.intercept(Lcom.opensymphony.xwork.ActionInvocation;)Ljava.lang.String;(ConfluenceWorkflowInterceptor.java:32)
      ... 1 more
      [ERROR] SessionImpl - -Could not synchronize database state with session <net.sf.hibernate.JDBCException: could not update: com.atlassian.confluence.pages.Page#82>
      [WARN] SQLStateSQLExceptionTranslator - -Translating SQLException with SQLState 'null' and errorCode '17090' and message [operation not allowed: streams type cannot be used in batching]; SQL was [null] for task [HibernateTemplate]
      org.springframework.jdbc.UncategorizedSQLException: (HibernateTemplate): encountered SQLException [operation not allowed: streams type cannot be used in batching]; nested exception is java.sql.SQLException: operation not allowed: streams type cannot be used in batching

      Attachments

        Issue Links

          Activity

            People

              Unassigned Unassigned
              3180ce264628 Irakli Nadareishvili
              Votes:
              1 Vote for this issue
              Watchers:
              2 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved: