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 37 - F2F Presentation Draft



Hi Satish, Yuzo and others,

The example that I constructed may not be not that common, which I agree ... :-)
The main point that I was trying to illustrate is: we cannot see any clear advantages why we pick (1A) over (1B), as it seems to us that (1A) is unnessarily more restrictive than (1B).

If there is a clear rationale of preference (1A) over (1B), please remind me again.

In fact, when we were discussing Issue 37 at Oracle, one of my coworkers (Sundari Revanur) raised a very good question for a more common usecase scenario. It seems to us that (1A) make it unnessarily complicated.

Here is what Sundari asked about:

Using an example from Yuzo's PDF slide,
-------------------------
<while ...>
   ... some other logic - A ...
   <receive partnerLink=...>
    <correlations>
      <correlation
        set="correlationSet1"
        initiate="yes"/>
      </correlation>
    </correlations>
  </receive>
   ... some other logic - B ...
</while>
-------------------------

If we choose (1A),  how do we handle the correlation violation fault the second and subsequent receive activity? Do BPEL programmers need to unroll the while loop or copy first receive related logic before the loop?


Thanks!


Regards,
Alex Yiu


[P.S.:
Yuzo:
I am not 100% sure that I understand you reply correctly. How do you model "initiating CS2 only once" with two service providers in a parallism situation?
In fact, in dynamic parallism, we may select more than one success branch out of N branches. Also, there will be a race condition going on between reaching of the complete condition to stop all other threads and other threads reaching the step of initating the CS in our future parallel for-each construct. (Details of race condition snapped here, since the above usecase situation look like more common.)]



Satish Thatte wrote:

You are looking for a way to use timing to prioritize cset initiation – this is certainly not in the spec now and is in fact the first time I have heard of this idea.  This would seem to be pretty tricky and open the door for all sorts of non-deterministic seeming choices for cset initiation.

 

Re issue 4 it is tangentially related if one wants to make a choice among a set of RFQ responders, for instance.  But the current idea as I understand it is to choose the best responder by some process specific means.

 

Satish




Yuzo Fujishima wrote:
Hi, Alex,

In your example, op3 is invoked only after both
of the two "receive op2" are completed because
flow is completed only after all of its children
complete. Therefore, initiating CS2 only once at
either "receive op2" should be enough. Then we
don't have to worry about "initiating a CS twice".

Yuzo Fujishima
NEC Corporation





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