]
Alejandro Guizar commented on JBPM-2794:
----------------------------------------
I have my doubts about DatabaseIdComposer. IMO more time should have been spent
researching other options such as Hibernate's enhanced identifier generators:
Apart from saving the work of implementing a custom identifier generator, the above
generators were (hopefully) implemented by folks who know the various issues that may
affect the generation process. Plus they are exposed to the entire Hibernate community,
thus increasing the chances that lurking bugs are found and eliminated.
Constraint vailoation when moving from wait state using timer that
result in looping back to the same wait state
----------------------------------------------------------------------------------------------------------------
Key: JBPM-2794
URL:
https://jira.jboss.org/jira/browse/JBPM-2794
Project: jBPM
Issue Type: Bug
Security Level: Public(Everyone can see)
Components: Runtime Engine
Affects Versions: jBPM 4.4, jBPM 4.3
Environment: Windows XP, Java 1.6, Test case, JBoss 5.1.0
Reporter: Maciej Swiderski
Attachments: jbpm-testcase.zip
It is impossible to go from one state where transition is made by timer that goes thru
java activity and decision point and gets back to the same state for retry.
Problem only exists if timer is assigned to a wait state and all nodes are executed
synchnously.
Error that is thrown is:
10:57:13,382 WRN | [JDBCExceptionReporter] SQL Error: -104, SQLState: 23000
10:57:13,382 SEV | [JDBCExceptionReporter] Violation of unique constraint $$: duplicate
value(s) for column(s) $$: SYS_CT_50 in statement [update JBPM4_EXECUTION set
DBVERSION_=?, ACTIVITYNAME_=?, PROCDEFID_=?, HASVARS_=?, NAME_=?, KEY_=?, ID_=?, STATE_=?,
SUSPHISTSTATE_=?, PRIORITY_=?, HISACTINST_=?, PARENT_=?, INSTANCE_=?, SUPEREXEC_=?,
SUBPROCINST_=? where DBID_=? and DBVERSION_=?]
### EXCEPTION ###########################################
10:57:13,382 SEV | [AbstractFlushingEventListener] Could not synchronize database state
with session
org.hibernate.exception.ConstraintViolationException: could not update:
[org.jbpm.pvm.internal.model.ExecutionImpl#15]
Attached is a eclipse project with minimal test case for it that illustrates the problem.
The same test project is attached to discussion on forum.
Workaround is to make one on the nodes between states to be async.
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: