[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [List Home]
Subject: RE: [wsbpel] Issue 3 -- proposal for discussion
Proposal#2 does keep the notion of snapshots but snapshots always reflect the state of a scope as it was when it completed successfully. If a compensation handler refers to variables in the local scope it gets snapshot variables. If it refers to variables in its enclosing scope what it gets depends on how it is called. If it is called from the compensation handler of the enclosing scope it gets the snapshot variable that the caller is also seeing. If it is called from a fault handler it sees the live state of the enclosing scope. And the same thing continues to further enclosing scopes recursively. In proposal#1 a compensation handler lives entirely in its own private snapshot and has no way to see or affect any state any other part of the process can see *except* for the incoming and outgoing parameters. However, within its snapshot of the universe (i.e., all enclosing scopes upto process scope) it can merrily assign values to anything including partnerLinks. This only affects its snapshot. Except for the parameters part, this is the current semantics. Hope that helps. Satish -----Original Message----- From: Jim Clune [mailto:jim@parasoft.com] Sent: Wednesday, October 08, 2003 9:43 AM To: wsbpel@lists.oasis-open.org Subject: Re: [wsbpel] Issue 3 -- proposal for discussion I could use some clarification for these proposals. Is proposal #2 any different from just throwing out the notion of snapshots and having all activities use the same state? Could someone clarify for proposal #1 how write operations are impacted? When executing a compensation handler in a snapshot world, what happens when the compensation handler attempts to assign a new value to a variable that is visible to activities that are still executing in the live state? (For example, a process level variable.) I am referring to an assignment that attempts to assign to the variables directly, not through the proposed inbound/outbound parameters. Does this: 1. Assign the new value to the snapshot version of the variable without impacting the "real" variable? (Might this be described as cloned variables as opposed to a frozen snapshot?) 2. Throw a fault? (Which fault?) 3. Get detected and prevented by static checking? (Is this always possible?) Jim Clune Parasoft Corporation email: jim.clune@parasoft.com 101 E. Huntington Ave. voice: (626) 256-3680 Monrovia, CA. 91016 fax : (626) 305-9048 To unsubscribe from this mailing list (and be removed from the roster of the OASIS TC), go to http://www.oasis-open.org/apps/org/workgroup/wsbpel/members/leave_workgr oup.php.
[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [List Home]