[jboss-jira] [JBoss JIRA] Created: (JBRULES-2608) Variable Persistence Overwrites NULL Values over Persisted Values

Anatoly Polinsky (JIRA) jira-events at lists.jboss.org
Mon Aug 2 21:12:49 EDT 2010


Variable Persistence Overwrites NULL Values over Persisted Values
-----------------------------------------------------------------

                 Key: JBRULES-2608
                 URL: https://jira.jboss.org/browse/JBRULES-2608
             Project: Drools
          Issue Type: Bug
      Security Level: Public (Everyone can see)
          Components: All
    Affects Versions: 5.1.0.FINAL
         Environment: N/A
            Reporter: Anatoly Polinsky
            Assignee: Mark Proctor


Drools Flow
=========

   For non-String variables (Serializ..ble, Entities, etc..), Drools overwrites NULLs when a (JPA) process is resumed ( a workitem is completed ).

   1. Here is a use case: a List ( ArrayList ) is passed to the process in start as a parameter 
   2. First work item sees ( maps in ) the List, and can work with it inside the work item handler
   3. First work item does not complete: process goes to sleep.
   4. When the session is reloaded, the first work item is completed
   5. All the persisted variables ( including the "list" ) are restored
   6. Second work item is taking in the list ( it maps in )
   7. However at this point it is NULL

   It seems that when the context is closed, after resolving variables, the following (WorkItemNodeInstance):

            VariableScopeInstance variableScopeInstance = ( VariableScopeInstance )
                    resolveContextInstance( VariableScope.VARIABLE_SCOPE, mapping.getValue() );

    does no longer have the restored variables, and rather NULLs, since internally variables are compared with a "result map" that was passed to the previous work item.

    This means that persisted variables are restored internally, but then overwritten internally by NULLs.

/Anatoly

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

        


More information about the jboss-jira mailing list