OASIS Mailing List ArchivesView the OASIS mailing list archive below
or browse/search using MarkMail.


Help: OASIS Mailing Lists Help | MarkMail Help

wsbpel message

[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [List Home]

Subject: RE: [wsbpel] Issue - 271 - ConflictingReceive with Different Correlation Sets

We would only be able to catch this during static analysis if the IMA used the same message variable or had the same <fromPart> assignments. It's possible to have the same property with different values depending on the message used to extract the property. In the case I described, I had imagined the user had different correlation sets with different message variables but with the same correlated data.
The motivation for faulting just one of these IMA's during its execution is that it is consistent with the current usage of the bpel:conflictingReceive fault. In the standard case the fault is thrown when an IMA attempts to execute but there is already an IMA with the same partnerLink, operation, and correlation sets queued by the process. In this case the fault is thrown to the IMA that is attempting to execute and not to the one that is already executing and waiting to receive its data.
However, I think both cases are modeling errors so I'm ok with letting all of the IMA activities execute and then fault them all if/when a message arrives.  

From: Prasad Yendluri [mailto:pyendluri@webmethods.com]
Sent: Sunday, April 30, 2006 5:16 PM
To: Mark Ford
Cc: wsbpel@lists.oasis-open.org
Subject: Re: [wsbpel] Issue - 271 - ConflictingReceive with Different Correlation Sets

I agree we may want to treat the second (same data) case differently than the first one.
However I think based on the two potentials for the 2nd case possible there are two different solutions:

2.a) If the both (or more) correlation sets contain the same property-sets and hence would
            always have the same values. Cases for conflicting receive that happen due to this must be
            detected by static analysis.

2.b) When two correlation sets contain the same values even though they have different property sets.
            This kind of conflicting receive falls into the same category of the main issue reported, as a special case
             situation. Hence this must be treated in the same way as that.

I concur that for case (1) of the original issue reported, we want to fault all receives that are in conflict. I think for 2.b also we should do the same. I am not sure why we want to “In this case we could detect the conflicting receive at the point of execution of the second (all other) receive(s) and only fault it (them)”?  What is the motivation?
BTW what criteria would be used to determine which the first one which are others (that are faulted)?



-------- Original Message --------
Subject: RE: [wsbpel] Issue - 271 - ConflictingReceive with Different Correlation Sets
Date: Sat, 29 Apr 2006 06:35:41 -0400
From: Mark Ford <mark.ford@active-endpoints.com>
To: <wsbpel@lists.oasis-open.org>

I assume that you intend to fault both of the receives with a bpel:conflictingReceive. This should be made explicit in the spec text.
There is also another case where R1 and R2 contain the same data for their correlation sets. In this case we could detect the conflicting receive at the point of execution of the second receive and only fault it.

From: ws-bpel issues list editor [mailto:peter.furniss@erebor.co.uk]
Sent: Friday, April 28, 2006 7:51 PM
To: wsbpel@lists.oasis-open.org
Subject: [wsbpel] Issue - 271 - ConflictingReceive with Different Correlation Sets

This issue has been added to the wsbpel issue list with a status of "received". The status will be changed to "open" if a motion to open the issue is proposed and that motion is approved by the TC. A motion could also be proposed to close it without further consideration. Otherwise it will remain as "received".

The issues list is posted as a Technical Committee document to the OASIS WSBPEL TC pages on a regular basis. The current edition, as a TC document, is the most recent version of the document entitled in the "Issues" folder of the WSBPEL TC document list - the next posting as a TC document will include this issue. The list editor's working copy, which will normally include an issue when it is announced, is available at this constant URL.

Issue - 271 - ConflictingReceive with Different Correlation Sets

Status: received
Date added: 28 Apr 2006
Date submitted: 28 April 2006
Submitter: Dieter Koenig1
Document: WS-BPEL 2.0 Committee Draft
Description: Section 10.4 defines cases where conflictingReceive must be thrown:

A business process instance MUST NOT simultaneously enable two or more receive activities for the same partnerLink, portType, operation and correlationSet(s).

This definition does not provide the uniqueness required to unambigously route an incoming request message to the right inbound message activity.

Consider two simultaneously enabled activities (today not a conflictingReceive because of different correlation sets):

<receive partnerLink="PL1" portType="PT1" operation="OP" ...>
      <correlation set="CS1" initiate="no"/>

<receive partnerLink="PL1" portType="PT1" operation="OP" ...> <correlations> <correlation set="CS2" initiate="no"/> </correlations> <receive/>

In a scenario where BOTH CS1 AND CS2 match an incoming request, conflictingReceive should also be thrown.
Submitter's proposal: Add text following the sentence quoted above:

Moreover, if a business process instance simultaneously enables two or more receive activities for the same partnerLink, portType, operation but different correlationSet(s), and the correlations of multiple of these activities match an incoming request message, then conflictingReceive must also be thrown".

Changes: 28 Apr 2006 - new issue

To comment on this issue (including whether it should be accepted), please follow-up to this announcement on the wsbpel@lists.oasis-open.org list (replying to this message should automatically send your message to that list), or ensure the subject line as you send it starts "Issue - 271 - [anything]" or is a reply to such a message. If you want to formally propose a resolution to an open issue, please start the subject line "Issue - 271 - Proposed resolution", without any Re: or similar.

To add a new issue, see the issues procedures document (but the address for new issue submission is the sender of this announcement).

[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [List Home]