You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@ode.apache.org by "Rafal Rusin (JIRA)" <ji...@apache.org> on 2010/04/12 18:41:41 UTC

[jira] Resolved: (ODE-804) Correlation unique constraint violation problem

     [ https://issues.apache.org/jira/browse/ODE-804?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Rafal Rusin resolved ODE-804.
-----------------------------

    Fix Version/s: 1.3.4
       Resolution: Fixed

> Correlation unique constraint violation problem
> -----------------------------------------------
>
>                 Key: ODE-804
>                 URL: https://issues.apache.org/jira/browse/ODE-804
>             Project: ODE
>          Issue Type: Bug
>          Components: BPEL Runtime
>    Affects Versions: 1.3.3
>         Environment: DAO Hibernate
>            Reporter: Rafal Rusin
>            Assignee: Rafal Rusin
>             Fix For: 1.3.4
>
>         Attachments: correlationUnicityTest.diff
>
>
> This happens when 2 instances are trying to do receive on the same correlation key and operation:
>  04-12@12:56:16 WARN  (GeronimoLog.java:96)     - Unexpected exception from beforeCompletion; transaction will roll back
>  org.hibernate.exception.ConstraintViolationException: could not insert: [org.apache.ode.daohib.bpel.hobj.HCorrelatorSelector]
> 	at org.hibernate.exception.SQLStateConverter.convert(SQLStateConverter.java:71)
> 	at org.hibernate.exception.JDBCExceptionHelper.convert(JDBCExceptionHelper.java:43)
> 	at org.hibernate.persister.entity.AbstractEntityPersister.insert(AbstractEntityPersister.java:2267)
> 	at org.hibernate.persister.entity.AbstractEntityPersister.insert(AbstractEntityPersister.java:2660)
> 	at org.hibernate.action.EntityInsertAction.execute(EntityInsertAction.java:56)
> 	at org.hibernate.engine.ActionQueue.execute(ActionQueue.java:250)
> 	at org.hibernate.engine.ActionQueue.executeActions(ActionQueue.java:234)
> 	at org.hibernate.engine.ActionQueue.executeActions(ActionQueue.java:141)
> 	at org.hibernate.event.def.AbstractFlushingEventListener.performExecutions(AbstractFlushingEventListener.java:298)
> 	at org.hibernate.event.def.DefaultFlushEventListener.onFlush(DefaultFlushEventListener.java:27)
> 	at org.hibernate.impl.SessionImpl.flush(SessionImpl.java:1000)
> 	at org.hibernate.impl.SessionImpl.managedFlush(SessionImpl.java:338)
> 	at org.hibernate.transaction.CacheSynchronization.beforeCompletion(CacheSynchronization.java:59)
> 	at org.apache.geronimo.transaction.manager.TransactionImpl.beforeCompletion(TransactionImpl.java:514)
> 	at org.apache.geronimo.transaction.manager.TransactionImpl.beforeCompletion(TransactionImpl.java:498)
> 	at org.apache.geronimo.transaction.manager.TransactionImpl.beforePrepare(TransactionImpl.java:400)
> 	at org.apache.geronimo.transaction.manager.TransactionImpl.commit(TransactionImpl.java:257)
> 	at org.apache.geronimo.transaction.manager.TransactionManagerImpl.commit(TransactionManagerImpl.java:238)
> 	at org.apache.ode.scheduler.simple.SimpleScheduler.execTransaction(SimpleScheduler.java:288)
> 	at org.apache.ode.scheduler.simple.SimpleScheduler.execTransaction(SimpleScheduler.java:236)
> 	at org.apache.ode.scheduler.simple.SimpleScheduler$RunJob.call(SimpleScheduler.java:509)
> 	at org.apache.ode.scheduler.simple.SimpleScheduler$RunJob.call(SimpleScheduler.java:493)
> 	at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:269)
> 	at java.util.concurrent.FutureTask.run(FutureTask.java:123)
> 	at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:650)
> 	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:675)
> 	at java.lang.Thread.run(Thread.java:595)
> Caused by: java.sql.SQLException: The statement was aborted because it would have caused a duplicate key value in a unique or primary key constraint or unique index identified by 'SQL100412005552361' defined on 'BPEL_SELECTORS'.
> 	at org.apache.derby.impl.jdbc.SQLExceptionFactory.getSQLException(Unknown Source)
> 	at org.apache.derby.impl.jdbc.Util.generateCsSQLException(Unknown Source)
> 	at org.apache.derby.impl.jdbc.TransactionResourceImpl.wrapInSQLException(Unknown Source)
> 	at org.apache.derby.impl.jdbc.TransactionResourceImpl.handleException(Unknown Source)
> 	at org.apache.derby.impl.jdbc.EmbedConnection.handleException(Unknown Source)
> 	at org.apache.derby.impl.jdbc.ConnectionChild.handleException(Unknown Source)
> 	at org.apache.derby.impl.jdbc.EmbedStatement.executeStatement(Unknown Source)
> 	at org.apache.derby.impl.jdbc.EmbedPreparedStatement.executeStatement(Unknown Source)
> 	at org.apache.derby.impl.jdbc.EmbedPreparedStatement.executeUpdate(Unknown Source)
> 	at org.tranql.connector.jdbc.PreparedStatementHandle.executeUpdate(PreparedStatementHandle.java:103)
> 	at sun.reflect.GeneratedMethodAccessor22.invoke(Unknown Source)
> 	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
> 	at java.lang.reflect.Method.invoke(Method.java:585)
> 	at org.apache.ode.utils.LoggingInterceptor.invoke(LoggingInterceptor.java:85)
> 	at $Proxy10.executeUpdate(Unknown Source)
> 	at org.hibernate.jdbc.NonBatchingBatcher.addToBatch(NonBatchingBatcher.java:23)
> 	at org.hibernate.persister.entity.AbstractEntityPersister.insert(AbstractEntityPersister.java:2247)
> 	... 24 more
> Caused by: ERROR 23505: The statement was aborted because it would have caused a duplicate key value in a unique or primary key constraint or unique index identified by 'SQL100412005552361' defined on 'BPEL_SELECTORS'.
> 	at org.apache.derby.iapi.error.StandardException.newException(Unknown Source)
> 	at org.apache.derby.impl.sql.execute.IndexChanger.insertAndCheckDups(Unknown Source)
> 	at org.apache.derby.impl.sql.execute.IndexChanger.doInsert(Unknown Source)
> 	at org.apache.derby.impl.sql.execute.IndexChanger.insert(Unknown Source)
> 	at org.apache.derby.impl.sql.execute.IndexSetChanger.insert(Unknown Source)
> 	at org.apache.derby.impl.sql.execute.RowChangerImpl.insertRow(Unknown Source)
> 	at org.apache.derby.impl.sql.execute.InsertResultSet.normalInsertCore(Unknown Source)
> 	at org.apache.derby.impl.sql.execute.InsertResultSet.open(Unknown Source)
> 	at org.apache.derby.impl.sql.GenericPreparedStatement.executeStmt(Unknown Source)
> 	at org.apache.derby.impl.sql.GenericPreparedStatement.execute(Unknown Source)
> 	... 35 more

-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: https://issues.apache.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira