Bug 788489 - Hibernate error on starting the "Evaluation" process
Summary: Hibernate error on starting the "Evaluation" process
Keywords:
Status: VERIFIED
Alias: None
Product: JBoss Enterprise BRMS Platform 5
Classification: JBoss
Component: jBPM 5, jBPM Console
Version: BRMS 5.3.0.GA
Hardware: Unspecified
OS: Unspecified
high
urgent
Target Milestone: ---
: BRMS 5.3.0.GA
Assignee: Kris Verlaenen
QA Contact: Lukáš Petrovický
URL:
Whiteboard:
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2012-02-08 09:53 UTC by Ryan Zhang
Modified: 2022-01-05 05:22 UTC (History)
2 users (show)

Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Clone Of:
Environment:
Last Closed:
Type: ---


Attachments (Terms of Use)
server.log (198.60 KB, text/x-log)
2012-02-08 09:54 UTC, Ryan Zhang
no flags Details
jbpm console snapshot.png (246.84 KB, image/png)
2012-02-08 09:54 UTC, Ryan Zhang
no flags Details
new server log (156.43 KB, text/x-log)
2012-02-15 09:01 UTC, Ryan Zhang
no flags Details

Description Ryan Zhang 2012-02-08 09:53:10 UTC
Description of problem:
The following error was found when starting the "Evaluation" process in jbpm-console.
See also attachment for web console and server log file.

The exception looks like:
2012-02-07 18:49:09,129 ERROR [org.hibernate.event.def.AbstractFlushingEventListener] (http-127.0.0.1-8080-3) Could not synchronize database state with session
org.hibernate.StaleObjectStateException: Row was updated or deleted by another transaction (or unsaved-value mapping was incorrect): [org.drools.persistence.info.SessionInfo#1]
	at org.hibernate.persister.entity.AbstractEntityPersister.check(AbstractEntityPersister.java:1782)
	at org.hibernate.persister.entity.AbstractEntityPersister.update(AbstractEntityPersister.java:2425)
	at org.hibernate.persister.entity.AbstractEntityPersister.updateOrInsert(AbstractEntityPersister.java:2325)
	at org.hibernate.persister.entity.AbstractEntityPersister.update(AbstractEntityPersister.java:2625)
	at org.hibernate.action.EntityUpdateAction.execute(EntityUpdateAction.java:115)
	at org.hibernate.engine.ActionQueue.execute(ActionQueue.java:278)
	at org.hibernate.engine.ActionQueue.executeActions(ActionQueue.java:262)
	at org.hibernate.engine.ActionQueue.executeActions(ActionQueue.java:167)
	at org.hibernate.event.def.AbstractFlushingEventListener.performExecutions(AbstractFlushingEventListener.java:321)
	at org.hibernate.event.def.DefaultFlushEventListener.onFlush(DefaultFlushEventListener.java:50)
	at org.hibernate.impl.SessionImpl.flush(SessionImpl.java:1030)
	at org.hibernate.impl.SessionImpl.managedFlush(SessionImpl.java:367)
	at org.hibernate.ejb.AbstractEntityManagerImpl$1.beforeCompletion(AbstractEntityManagerImpl.java:504)
	at com.arjuna.ats.internal.jta.resources.arjunacore.SynchronizationImple.beforeCompletion(SynchronizationImple.java:101)
	at com.arjuna.ats.arjuna.coordinator.TwoPhaseCoordinator.beforeCompletion(TwoPhaseCoordinator.java:272)
	at com.arjuna.ats.arjuna.coordinator.TwoPhaseCoordinator.end(TwoPhaseCoordinator.java:89)
	at com.arjuna.ats.arjuna.AtomicAction.commit(AtomicAction.java:160)
	at com.arjuna.ats.internal.jta.transaction.arjunacore.TransactionImple.commitAndDisassociate(TransactionImple.java:1433)
	at com.arjuna.ats.internal.jta.transaction.arjunacore.BaseTransaction.commit(BaseTransaction.java:137)
	at com.arjuna.ats.jbossatx.BaseTransactionManagerDelegate.commit(BaseTransactionManagerDelegate.java:75)
	at org.jboss.tm.usertx.client.ServerVMClientUserTransaction.commit(ServerVMClientUserTransaction.java:162)
	at org.drools.persistence.jta.JtaTransactionManager.commit(JtaTransactionManager.java:179)
	at org.drools.persistence.SingleSessionCommandService.execute(SingleSessionCommandService.java:358)
	at org.drools.command.impl.CommandBasedStatefulKnowledgeSession.startProcess(CommandBasedStatefulKnowledgeSession.java:223)
	at org.jbpm.integration.console.CommandDelegate.startProcess(CommandDelegate.java:113)
	at org.jbpm.integration.console.ProcessManagement.newInstance(ProcessManagement.java:78)
	at org.jboss.bpm.console.server.FormProcessingFacade.startProcessWithUI(FormProcessingFacade.java:197)
	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
	at java.lang.reflect.Method.invoke(Method.java:597)
	at org.jboss.resteasy.core.MethodInjectorImpl.invoke(MethodInjectorImpl.java:140)
	at org.jboss.resteasy.core.ResourceMethod.invokeOnTarget(ResourceMethod.java:255)
	at org.jboss.resteasy.core.ResourceMethod.invoke(ResourceMethod.java:220)
	at org.jboss.resteasy.core.ResourceMethod.invoke(ResourceMethod.java:209)
	at org.jboss.resteasy.core.SynchronousDispatcher.getResponse(SynchronousDispatcher.java:519)
	at org.jboss.resteasy.core.SynchronousDispatcher.invoke(SynchronousDispatcher.java:496)
	at org.jboss.resteasy.core.SynchronousDispatcher.invoke(SynchronousDispatcher.java:119)
	at org.jboss.resteasy.plugins.server.servlet.ServletContainerDispatcher.service(ServletContainerDispatcher.java:208)
	at org.jboss.resteasy.plugins.server.servlet.HttpServletDispatcher.service(HttpServletDispatcher.java:55)
	at org.jboss.resteasy.plugins.server.servlet.HttpServletDispatcher.service(HttpServletDispatcher.java:50)
	at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
	at org.jboss.bpm.console.server.util.GWTJsonFilter.doFilter(GWTJsonFilter.java:59)
	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
	at org.jboss.web.tomcat.filters.ReplyHeaderFilter.doFilter(ReplyHeaderFilter.java:96)
	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
	at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:235)
	at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191)
	at org.jboss.web.tomcat.security.SecurityAssociationValve.invoke(SecurityAssociationValve.java:183)
	at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:534)
	at org.jboss.web.tomcat.security.JaccContextValve.invoke(JaccContextValve.java:95)
	at org.jboss.web.tomcat.security.SecurityContextEstablishmentValve.process(SecurityContextEstablishmentValve.java:126)
	at org.jboss.web.tomcat.security.SecurityContextEstablishmentValve.invoke(SecurityContextEstablishmentValve.java:70)
	at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127)
	at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)
	at org.jboss.web.tomcat.service.jca.CachedConnectionValve.invoke(CachedConnectionValve.java:158)
	at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
	at org.jboss.web.tomcat.service.request.ActiveRequestResponseCacheValve.internalProcess(ActiveRequestResponseCacheValve.java:74)
	at org.jboss.web.tomcat.service.request.ActiveRequestResponseCacheValve.invoke(ActiveRequestResponseCacheValve.java:47)
	at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:330)
	at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:829)
	at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:599)
	at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:451)
	at java.lang.Thread.run(Thread.java:662)


Version-Release number of selected component (if applicable):
ER4 development version. It can be downloaded at http://jawa05.englab.brq.redhat.com/miscellaneous/brms-5.3-ER4-dev/ to reproduce the issue.

How reproducible:


Steps to Reproduce:
1. Import the jbpm-sample-repository.xml
2. Choose Evaluation and click "start" in jbpm-console
3. Fill in some text info and submit. The error would happen.
  
Actual results:


Expected results:
It should work functional.

Additional info:
This is block issue for BRMS 5.3 ER4.

Comment 1 Ryan Zhang 2012-02-08 09:54:00 UTC
Created attachment 560207 [details]
server.log

Comment 2 Ryan Zhang 2012-02-08 09:54:47 UTC
Created attachment 560208 [details]
jbpm console snapshot.png

Comment 3 Marco Rietveld 2012-02-13 11:35:51 UTC
Ryan, 

Could you check the jbpm persistence.xml (it should contain SessionInfo)? 

We ran into this problem as well with ER3, when the code originally changed. 

Please check if the persistence.xml contains the following lines: 

      <!-- hbm2ddl.auto MUST BE update! The console will otherwise overwrite the schema with each new thread -->
      <property name="hibernate.hbm2ddl.auto" value="update" />

That should fix this problem. 

Thanks,
Marco

Comment 4 Ryan Zhang 2012-02-14 04:26:00 UTC
Yes, you are correct.
This can fix this issue. 
Update this status to verified directly since this only happened in prod smoke test phase.

Thanks very much Marco!

Comment 5 Ryan Zhang 2012-02-15 08:59:46 UTC
I have to reopen this issue.
The jbpm web console looks functional now. But there is still some part of error  remained in server.log. I attached the latest server.log for reference.


The stackstrace looks like:

2012-02-15 16:13:04,433 ERROR [org.hibernate.util.JDBCExceptionReporter] (NioProcessor-3) Integrity constraint violation - no parent FK27A9A59E619A0 table: TASK in statement [update Task set allowedToDelegate=?, taskInitiator_id=?, priority=?, activationTime=?, actualOwner_id=?, createdBy_id=?, createdOn=?, documentAccessType=?, documentContentId=?, documentType=?, expirationTime=?, faultAccessType=?, faultContentId=?, faultName=?, faultType=?, outputAccessType=?, outputContentId=?, outputType=?, parentId=?, previousStatus=?, processId=?, processInstanceId=?, processSessionId=?, skipable=?, status=?, workItemId=?, OPTLOCK=? where id=? and OPTLOCK=?]
2012-02-15 16:13:04,434 ERROR [org.hibernate.event.def.AbstractFlushingEventListener] (NioProcessor-3) Could not synchronize database state with session
org.hibernate.exception.ConstraintViolationException: could not update: [org.jbpm.task.Task#1]
	at org.hibernate.exception.SQLStateConverter.convert(SQLStateConverter.java:94)
	at org.hibernate.exception.JDBCExceptionHelper.convert(JDBCExceptionHelper.java:66)
	at org.hibernate.persister.entity.AbstractEntityPersister.update(AbstractEntityPersister.java:2443)
	at org.hibernate.persister.entity.AbstractEntityPersister.updateOrInsert(AbstractEntityPersister.java:2325)
	at org.hibernate.persister.entity.AbstractEntityPersister.update(AbstractEntityPersister.java:2625)
	at org.hibernate.action.EntityUpdateAction.execute(EntityUpdateAction.java:115)
	at org.hibernate.engine.ActionQueue.execute(ActionQueue.java:278)
	at org.hibernate.engine.ActionQueue.executeActions(ActionQueue.java:262)
	at org.hibernate.engine.ActionQueue.executeActions(ActionQueue.java:167)
	at org.hibernate.event.def.AbstractFlushingEventListener.performExecutions(AbstractFlushingEventListener.java:321)
	at org.hibernate.event.def.DefaultFlushEventListener.onFlush(DefaultFlushEventListener.java:50)
	at org.hibernate.impl.SessionImpl.flush(SessionImpl.java:1030)
	at org.hibernate.impl.SessionImpl.managedFlush(SessionImpl.java:367)
	at org.hibernate.transaction.JDBCTransaction.commit(JDBCTransaction.java:137)
	at org.hibernate.ejb.TransactionImpl.commit(TransactionImpl.java:54)
	at org.jbpm.task.service.TaskServiceSession.doOperationInTransaction(TaskServiceSession.java:975)
	at org.jbpm.task.service.TaskServiceSession.addTask(TaskServiceSession.java:171)
	at org.jbpm.task.service.TaskServerHandler.messageReceived(TaskServerHandler.java:109)
	at org.jbpm.task.service.mina.MinaTaskServerHandler.messageReceived(MinaTaskServerHandler.java:41)
	at org.apache.mina.core.filterchain.DefaultIoFilterChain$TailFilter.messageReceived(DefaultIoFilterChain.java:716)
	at org.apache.mina.core.filterchain.DefaultIoFilterChain.callNextMessageReceived(DefaultIoFilterChain.java:434)
	at org.apache.mina.core.filterchain.DefaultIoFilterChain.access$1200(DefaultIoFilterChain.java:46)
	at org.apache.mina.core.filterchain.DefaultIoFilterChain$EntryImpl$1.messageReceived(DefaultIoFilterChain.java:796)
	at org.apache.mina.filter.codec.ProtocolCodecFilter$ProtocolDecoderOutputImpl.flush(ProtocolCodecFilter.java:427)
	at org.apache.mina.filter.codec.ProtocolCodecFilter.messageReceived(ProtocolCodecFilter.java:245)
	at org.apache.mina.core.filterchain.DefaultIoFilterChain.callNextMessageReceived(DefaultIoFilterChain.java:434)
	at org.apache.mina.core.filterchain.DefaultIoFilterChain.access$1200(DefaultIoFilterChain.java:46)
	at org.apache.mina.core.filterchain.DefaultIoFilterChain$EntryImpl$1.messageReceived(DefaultIoFilterChain.java:796)
	at org.apache.mina.filter.logging.LoggingFilter.messageReceived(LoggingFilter.java:177)
	at org.apache.mina.core.filterchain.DefaultIoFilterChain.callNextMessageReceived(DefaultIoFilterChain.java:434)
	at org.apache.mina.core.filterchain.DefaultIoFilterChain.access$1200(DefaultIoFilterChain.java:46)
	at org.apache.mina.core.filterchain.DefaultIoFilterChain$EntryImpl$1.messageReceived(DefaultIoFilterChain.java:796)
	at org.apache.mina.core.filterchain.IoFilterAdapter.messageReceived(IoFilterAdapter.java:119)
	at org.apache.mina.core.filterchain.DefaultIoFilterChain.callNextMessageReceived(DefaultIoFilterChain.java:434)
	at org.apache.mina.core.filterchain.DefaultIoFilterChain.fireMessageReceived(DefaultIoFilterChain.java:426)
	at org.apache.mina.core.polling.AbstractPollingIoProcessor.read(AbstractPollingIoProcessor.java:692)
	at org.apache.mina.core.polling.AbstractPollingIoProcessor.process(AbstractPollingIoProcessor.java:645)
	at org.apache.mina.core.polling.AbstractPollingIoProcessor.process(AbstractPollingIoProcessor.java:634)
	at org.apache.mina.core.polling.AbstractPollingIoProcessor.access$400(AbstractPollingIoProcessor.java:66)
	at org.apache.mina.core.polling.AbstractPollingIoProcessor$Processor.run(AbstractPollingIoProcessor.java:1078)
	at org.apache.mina.util.NamePreservingRunnable.run(NamePreservingRunnable.java:64)
	at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
	at java.lang.Thread.run(Thread.java:662)
Caused by: java.sql.SQLException: Integrity constraint violation - no parent FK27A9A59E619A0 table: TASK in statement [update Task set allowedToDelegate=?, taskInitiator_id=?, priority=?, activationTime=?, actualOwner_id=?, createdBy_id=?, createdOn=?, documentAccessType=?, documentContentId=?, documentType=?, expirationTime=?, faultAccessType=?, faultContentId=?, faultName=?, faultType=?, outputAccessType=?, outputContentId=?, outputType=?, parentId=?, previousStatus=?, processId=?, processInstanceId=?, processSessionId=?, skipable=?, status=?, workItemId=?, OPTLOCK=? where id=? and OPTLOCK=?]
	at org.hsqldb.jdbc.Util.throwError(Unknown Source)
	at org.hsqldb.jdbc.jdbcPreparedStatement.executeUpdate(Unknown Source)
	at org.jboss.resource.adapter.jdbc.CachedPreparedStatement.executeUpdate(CachedPreparedStatement.java:96)
	at org.jboss.resource.adapter.jdbc.WrappedPreparedStatement.executeUpdate(WrappedPreparedStatement.java:365)
	at org.hibernate.persister.entity.AbstractEntityPersister.update(AbstractEntityPersister.java:2425)
	... 41 more
2012-02-15 16:13:04,436 ERROR [STDERR] (NioProcessor-3) javax.persistence.RollbackException: Error while commiting the transaction
2012-02-15 16:13:04,436 ERROR [STDERR] (NioProcessor-3) 	at org.hibernate.ejb.TransactionImpl.commit(TransactionImpl.java:71)
2012-02-15 16:13:04,436 ERROR [STDERR] (NioProcessor-3) 	at org.jbpm.task.service.TaskServiceSession.doOperationInTransaction(TaskServiceSession.java:975)
2012-02-15 16:13:04,436 ERROR [STDERR] (NioProcessor-3) 	at org.jbpm.task.service.TaskServiceSession.addTask(TaskServiceSession.java:171)
2012-02-15 16:13:04,436 ERROR [STDERR] (NioProcessor-3) 	at org.jbpm.task.service.TaskServerHandler.messageReceived(TaskServerHandler.java:109)
2012-02-15 16:13:04,436 ERROR [STDERR] (NioProcessor-3) 	at org.jbpm.task.service.mina.MinaTaskServerHandler.messageReceived(MinaTaskServerHandler.java:41)
2012-02-15 16:13:04,436 ERROR [STDERR] (NioProcessor-3) 	at org.apache.mina.core.filterchain.DefaultIoFilterChain$TailFilter.messageReceived(DefaultIoFilterChain.java:716)
2012-02-15 16:13:04,436 ERROR [STDERR] (NioProcessor-3) 	at org.apache.mina.core.filterchain.DefaultIoFilterChain.callNextMessageReceived(DefaultIoFilterChain.java:434)
2012-02-15 16:13:04,436 ERROR [STDERR] (NioProcessor-3) 	at org.apache.mina.core.filterchain.DefaultIoFilterChain.access$1200(DefaultIoFilterChain.java:46)
2012-02-15 16:13:04,436 ERROR [STDERR] (NioProcessor-3) 	at org.apache.mina.core.filterchain.DefaultIoFilterChain$EntryImpl$1.messageReceived(DefaultIoFilterChain.java:796)
2012-02-15 16:13:04,436 ERROR [STDERR] (NioProcessor-3) 	at org.apache.mina.filter.codec.ProtocolCodecFilter$ProtocolDecoderOutputImpl.flush(ProtocolCodecFilter.java:427)
2012-02-15 16:13:04,436 ERROR [STDERR] (NioProcessor-3) 	at org.apache.mina.filter.codec.ProtocolCodecFilter.messageReceived(ProtocolCodecFilter.java:245)
2012-02-15 16:13:04,436 ERROR [STDERR] (NioProcessor-3) 	at org.apache.mina.core.filterchain.DefaultIoFilterChain.callNextMessageReceived(DefaultIoFilterChain.java:434)
2012-02-15 16:13:04,436 ERROR [STDERR] (NioProcessor-3) 	at org.apache.mina.core.filterchain.DefaultIoFilterChain.access$1200(DefaultIoFilterChain.java:46)
2012-02-15 16:13:04,436 ERROR [STDERR] (NioProcessor-3) 	at org.apache.mina.core.filterchain.DefaultIoFilterChain$EntryImpl$1.messageReceived(DefaultIoFilterChain.java:796)
2012-02-15 16:13:04,437 ERROR [STDERR] (NioProcessor-3) 	at org.apache.mina.filter.logging.LoggingFilter.messageReceived(LoggingFilter.java:177)
2012-02-15 16:13:04,437 ERROR [STDERR] (NioProcessor-3) 	at org.apache.mina.core.filterchain.DefaultIoFilterChain.callNextMessageReceived(DefaultIoFilterChain.java:434)
2012-02-15 16:13:04,437 ERROR [STDERR] (NioProcessor-3) 	at org.apache.mina.core.filterchain.DefaultIoFilterChain.access$1200(DefaultIoFilterChain.java:46)
2012-02-15 16:13:04,437 ERROR [STDERR] (NioProcessor-3) 	at org.apache.mina.core.filterchain.DefaultIoFilterChain$EntryImpl$1.messageReceived(DefaultIoFilterChain.java:796)
2012-02-15 16:13:04,437 ERROR [STDERR] (NioProcessor-3) 	at org.apache.mina.core.filterchain.IoFilterAdapter.messageReceived(IoFilterAdapter.java:119)
2012-02-15 16:13:04,437 ERROR [STDERR] (NioProcessor-3) 	at org.apache.mina.core.filterchain.DefaultIoFilterChain.callNextMessageReceived(DefaultIoFilterChain.java:434)
2012-02-15 16:13:04,437 ERROR [STDERR] (NioProcessor-3) 	at org.apache.mina.core.filterchain.DefaultIoFilterChain.fireMessageReceived(DefaultIoFilterChain.java:426)
2012-02-15 16:13:04,437 ERROR [STDERR] (NioProcessor-3) 	at org.apache.mina.core.polling.AbstractPollingIoProcessor.read(AbstractPollingIoProcessor.java:692)
2012-02-15 16:13:04,437 ERROR [STDERR] (NioProcessor-3) 	at org.apache.mina.core.polling.AbstractPollingIoProcessor.process(AbstractPollingIoProcessor.java:645)
2012-02-15 16:13:04,437 ERROR [STDERR] (NioProcessor-3) 	at org.apache.mina.core.polling.AbstractPollingIoProcessor.process(AbstractPollingIoProcessor.java:634)
2012-02-15 16:13:04,437 ERROR [STDERR] (NioProcessor-3) 	at org.apache.mina.core.polling.AbstractPollingIoProcessor.access$400(AbstractPollingIoProcessor.java:66)
2012-02-15 16:13:04,437 ERROR [STDERR] (NioProcessor-3) 	at org.apache.mina.core.polling.AbstractPollingIoProcessor$Processor.run(AbstractPollingIoProcessor.java:1078)
2012-02-15 16:13:04,437 ERROR [STDERR] (NioProcessor-3) 	at org.apache.mina.util.NamePreservingRunnable.run(NamePreservingRunnable.java:64)
2012-02-15 16:13:04,437 ERROR [STDERR] (NioProcessor-3) 	at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
2012-02-15 16:13:04,437 ERROR [STDERR] (NioProcessor-3) 	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
2012-02-15 16:13:04,437 ERROR [STDERR] (NioProcessor-3) 	at java.lang.Thread.run(Thread.java:662)
2012-02-15 16:13:04,437 ERROR [STDERR] (NioProcessor-3) Caused by: org.hibernate.exception.ConstraintViolationException: could not update: [org.jbpm.task.Task#1]
2012-02-15 16:13:04,437 ERROR [STDERR] (NioProcessor-3) 	at org.hibernate.exception.SQLStateConverter.convert(SQLStateConverter.java:94)
2012-02-15 16:13:04,438 ERROR [STDERR] (NioProcessor-3) 	at org.hibernate.exception.JDBCExceptionHelper.convert(JDBCExceptionHelper.java:66)
2012-02-15 16:13:04,438 ERROR [STDERR] (NioProcessor-3) 	at org.hibernate.persister.entity.AbstractEntityPersister.update(AbstractEntityPersister.java:2443)
2012-02-15 16:13:04,438 ERROR [STDERR] (NioProcessor-3) 	at org.hibernate.persister.entity.AbstractEntityPersister.updateOrInsert(AbstractEntityPersister.java:2325)
2012-02-15 16:13:04,438 ERROR [STDERR] (NioProcessor-3) 	at org.hibernate.persister.entity.AbstractEntityPersister.update(AbstractEntityPersister.java:2625)
2012-02-15 16:13:04,438 ERROR [STDERR] (NioProcessor-3) 	at org.hibernate.action.EntityUpdateAction.execute(EntityUpdateAction.java:115)
2012-02-15 16:13:04,438 ERROR [STDERR] (NioProcessor-3) 	at org.hibernate.engine.ActionQueue.execute(ActionQueue.java:278)
2012-02-15 16:13:04,438 ERROR [STDERR] (NioProcessor-3) 	at org.hibernate.engine.ActionQueue.executeActions(ActionQueue.java:262)
2012-02-15 16:13:04,438 ERROR [STDERR] (NioProcessor-3) 	at org.hibernate.engine.ActionQueue.executeActions(ActionQueue.java:167)
2012-02-15 16:13:04,438 ERROR [STDERR] (NioProcessor-3) 	at org.hibernate.event.def.AbstractFlushingEventListener.performExecutions(AbstractFlushingEventListener.java:321)
2012-02-15 16:13:04,438 ERROR [STDERR] (NioProcessor-3) 	at org.hibernate.event.def.DefaultFlushEventListener.onFlush(DefaultFlushEventListener.java:50)
2012-02-15 16:13:04,438 ERROR [STDERR] (NioProcessor-3) 	at org.hibernate.impl.SessionImpl.flush(SessionImpl.java:1030)
2012-02-15 16:13:04,438 ERROR [STDERR] (NioProcessor-3) 	at org.hibernate.impl.SessionImpl.managedFlush(SessionImpl.java:367)
2012-02-15 16:13:04,438 ERROR [STDERR] (NioProcessor-3) 	at org.hibernate.transaction.JDBCTransaction.commit(JDBCTransaction.java:137)
2012-02-15 16:13:04,438 ERROR [STDERR] (NioProcessor-3) 	at org.hibernate.ejb.TransactionImpl.commit(TransactionImpl.java:54)
2012-02-15 16:13:04,438 ERROR [STDERR] (NioProcessor-3) 	... 29 more
2012-02-15 16:13:04,438 ERROR [STDERR] (NioProcessor-3) Caused by: java.sql.SQLException: Integrity constraint violation - no parent FK27A9A59E619A0 table: TASK in statement [update Task set allowedToDelegate=?, taskInitiator_id=?, priority=?, activationTime=?, actualOwner_id=?, createdBy_id=?, createdOn=?, documentAccessType=?, documentContentId=?, documentType=?, expirationTime=?, faultAccessType=?, faultContentId=?, faultName=?, faultType=?, outputAccessType=?, outputContentId=?, outputType=?, parentId=?, previousStatus=?, processId=?, processInstanceId=?, processSessionId=?, skipable=?, status=?, workItemId=?, OPTLOCK=? where id=? and OPTLOCK=?]
2012-02-15 16:13:04,438 ERROR [STDERR] (NioProcessor-3) 	at org.hsqldb.jdbc.Util.throwError(Unknown Source)
2012-02-15 16:13:04,439 ERROR [STDERR] (NioProcessor-3) 	at org.hsqldb.jdbc.jdbcPreparedStatement.executeUpdate(Unknown Source)
2012-02-15 16:13:04,439 ERROR [STDERR] (NioProcessor-3) 	at org.jboss.resource.adapter.jdbc.CachedPreparedStatement.executeUpdate(CachedPreparedStatement.java:96)
2012-02-15 16:13:04,439 ERROR [STDERR] (NioProcessor-3) 	at org.jboss.resource.adapter.jdbc.WrappedPreparedStatement.executeUpdate(WrappedPreparedStatement.java:365)
2012-02-15 16:13:04,439 ERROR [STDERR] (NioProcessor-3) 	at org.hibernate.persister.entity.AbstractEntityPersister.update(AbstractEntityPersister.java:2425)
2012-02-15 16:13:04,439 ERROR [STDERR] (NioProcessor-3) 	... 41 more
2012-02-15 16:13:04,454 INFO  [org.apache.mina.filter.logging.LoggingFilter] (NioProcessor-3) SENT: HeapBuffer[pos=0 lim=0 cap=0: empty]

Comment 6 Ryan Zhang 2012-02-15 09:01:10 UTC
Created attachment 562167 [details]
new server log

Comment 7 Marco Rietveld 2012-02-15 22:17:13 UTC
Ryan, 

I'll look at this tomorrow (thursday). There were some updates to how Task objects are handled recently, it might have something to do with that. The changes/updates were in order to solve other concurrency issues with Task objects.

Comment 8 Marco Rietveld 2012-02-21 07:50:11 UTC
Hi Ryan,

Sorry for the late answer: I (tried to) look at it yesterday but ended up just struggling with the BRMS server.. Argh. 

In any case, I have a strong suspicion that the issue is caused by a commit we ended up reverting: 

See https://github.com/droolsjbpm/jbpm/commit/4894a8b9165081cf3aa2858d7a45c70f4f75c8a7

(In that commit, we revert commit 209ec88a ). I noticed that the revert hasn't made it onto the product git yet. Would you guys mind adding the revert commit (4894a8b9) to the product branch? 

Thanks,
Marco

Comment 9 Marco Rietveld 2012-02-21 09:55:56 UTC
Hmm, unfortunately reverting that commit doesn't help either. 

It's a problem with persistence in jbpm-human-task.. hmm.

Comment 11 Marco Rietveld 2012-03-16 01:08:26 UTC
Ryan, 

I just noticed something I hadn't before: 

Could you check what the values are of the hbm2ddl.auto in the persistence.xml's being used? 

The one for jbpm-console should be update -- setting it to create causes a StaleObjectException as shown above.

Comment 12 Ryan Zhang 2012-03-20 09:48:04 UTC
hi, Just notice I lost my first reply. 
It is set as "update"
Here is my checking:
[rzhang@localhost default]$ for i in $(find . -name "persistence.xml"); do echo $i;grep "hbm2ddl.auto" -r $i; done
/deploy/gwt-console-server.war/WEB-INF/classes/META-INF/persistence.xml
        <property name="hibernate.hbm2ddl.auto" value="update" />
./deploy/jbpm-human-task.war/WEB-INF/classes/META-INF/persistence.xml
      <property name="hibernate.hbm2ddl.auto" value="create" />

Comment 13 Ryan Zhang 2012-03-21 10:40:15 UTC
This issue is not found in ER5.
Not sure which code changes fix this issue. But I think it's gone. 
Update the status to ON_QA


Note You need to log in before you can comment on or make changes to this bug.