| Summary: | Deleting process instances leads to orphaned records in the JBPM_VARIABLEINSTANCE, JBPM_BYTEARRAY, JBPM_BYTEBLOCK tables | |||
|---|---|---|---|---|
| Product: | [JBoss] JBoss Enterprise SOA Platform 4 | Reporter: | Martin Weiler <mweiler> | |
| Component: | JBPM - within SOA | Assignee: | Kevin Conner <kevin.conner> | |
| Status: | CLOSED NEXTRELEASE | QA Contact: | ||
| Severity: | high | Docs Contact: | ||
| Priority: | high | |||
| Version: | 4.3 CP02 | |||
| Target Milestone: | --- | |||
| Target Release: | --- | |||
| Hardware: | Unspecified | |||
| OS: | Unspecified | |||
| URL: | http://jira.jboss.org/jira/browse/SOA-1956 | |||
| Whiteboard: | ||||
| Fixed In Version: | Doc Type: | Bug Fix | ||
| Doc Text: | Story Points: | --- | ||
| Clone Of: | ||||
| : | 779583 (view as bug list) | Environment: | ||
| Last Closed: | 2010-05-31 09:32:07 UTC | Type: | Bug | |
| Regression: | --- | Mount Type: | --- | |
| Documentation: | --- | CRM: | ||
| Verified Versions: | Category: | --- | ||
| oVirt Team: | --- | RHEL 7.3 requirements from Atomic Host: | ||
| Cloudforms Team: | --- | Target Upstream Version: | ||
|
Description
Martin Weiler
2010-02-18 09:39:08 UTC
Link: Added: This issue depends JBESB-3301 The ESB/jBPM async job will now delete the VariableInstances used as part of that communication, although this can only work when jBPM logging is *not* enabled. The quickstart has also been changed to use a message composer, creating Strings rather than byte[] payloads. Updated in ESB codebase, will be in next merge. Link: Added: This issue incorporates JBPM-2828 JBPM-2828 fixes the very issue that JBESB-3301 works around: delete the variable instances *iff* logging is not enabled. This could lead to executing duplicate and conflicting delete statements. Is JBESB-3301 still necessary even with jBPM 3.2.9? Part of the fix will be necessary, for example the change in the quickstart and the reworked deletion of the variables. The only part which may no longer be necessary is the explicit hibernate delete of the variable instance. BTW Where is the SOA issue for JBPM-2828? The explicit hibernate deletion of the variable instance has now been removed from the ESB codebase. Link: Removed: This issue incorporates JBPM-2828 Link: Added: This issue related SOA-1995 Verified in CR1 Here is the draft text for the Release Notes: https://jira.jboss.org/browse/JBESB-3301 In order to prevent the jBPM database from growing to unmanageable sizes, the GraphSession.deleteProcessInstance is able to delete ended process instances. However, this functionality was not working correctly, meaning that some legacy data was left "orphaned" in the tables. This happened because only the references to the process execution were removed, not the variables themselves. To fix this problem, variable instances are now deleted if logging is not enabled. If the logging service is enabled, the variable cannot be deleted immediately becauses the new VariableDeleteLog instance holds a reference to the variable. (These records are eventually removed upon process instance deletion.) As a result of this fixed, there are no longer orphaned files in the database. |