Details
-
Bug
-
Resolution: Fixed
-
Highest
-
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
- is incorporated by
-
CONFSERVER-1183 Oracle Support
- Closed