This is an archived snapshot of W3C's public bugzilla bug tracker, decommissioned in April 2019. Please see the home page for more details.

Bug 1101 - The operational behaviour involving "complete condition" is not clear
Summary: The operational behaviour involving "complete condition" is not clear
Status: CLOSED WONTFIX
Alias: None
Product: WS Choreography
Classification: Unclassified
Component: Last Call Comment: Confirmed Closed (show other bugs)
Version: unspecified
Hardware: PC Linux
: P2 normal
Target Milestone: --
Assignee: Martin Chapman
QA Contact: Martin Chapman
URL: http://lists.w3.org/Archives/Public/p...
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2005-02-07 19:11 UTC by Greg Ritzinger
Modified: 2005-08-02 13:57 UTC (History)
0 users

See Also:


Attachments

Description Greg Ritzinger 2005-02-07 19:11:32 UTC
*2.4.7. Choreography Life-line, the eighth para.

The operational behaviour involving "complete condition" is not clear.
Is the condition evaluated lock-step, at each action? It at least 
needs transaction semantics for all related variables.

Suppose a variable V should have the value [not W]. Suppose W should have
the value [not V]. We never know it is true or not, especially if they
are situated in different roles.

As a possible way to record this point, one may augment the 3rd sentence
as:

  "A complete condition MUST be possible to be matched in all Roles that
   participate in the Choreography, for which we assume a consistent 
   global view is maintained."

This is a very useful feature, I can see, but I feel like recording a bit 
of subtlety inside the spec.
Comment 1 Martin Chapman 2005-02-15 20:49:04 UTC
agreed on con call 15-feb-05:

requires clarification from issue raiser (Kohei Honda).
Action on Gary to followup
Comment 2 Greg Ritzinger 2005-03-22 19:07:14 UTC
Clarification from Kohei Honda:

http://lists.w3.org/Archives/Public/public-ws-chor/2005Mar/0042.html

I wrote:

 > The operational behaviour involving "complete condition" is not clear.
 > Is the condition evaluated lock-step, at each action? It at least
 > needs transaction semantics for all related variables.

This is based on a literal reading of the draft (which is what the
public would do). In the choreography element, we specify "complete"
condition. This is not shared by multiple roles but are local to
each of them. Hence I wonder how we know all these different
complete conditions are matched.

I believe the only possible way is

(1) For each role to evaluate it each time as computation
proceeds;
(2) If it evaluates to true it would pause a bit, asks a coordinator
(of some sort, should be provided by infrastructure) about the global
situation;
(3) If everybody agrees it is the time to complete well let's complete.

We need two-phrase commit or some sort to make this precise, but
this is technical (and anyway as far as it conforms to 1.6, timing
assumptions, it should be OK).

There are two further notes:

* If this is what is expected, we should put some such bits (that we
assume "all should agree that it is the time to complete" so that
the expected behaviour is clear. My proposal, slightly changing
what I wrote, is:

    "A complete condition MUST be possible to be matched in all Roles that
    participate in the Choreography, for which we assume an appropriate
    idea of synchronisation."

I am not satisfied with this, but some such line would be necessary.

* Adding operational bits is not going to execution logic, we need
to specify behaviours consistently and clearly. So it does not
violate e.g. 1.5.

I will write soon about the next issu, Issue 1107. I hope these
will be ready for today's conf call.

kohei

Comment 3 Greg Ritzinger 2005-03-22 19:09:26 UTC
Further clarification from Kohei Honda:
http://lists.w3.org/Archives/Public/public-ws-chor/2005Mar/0045.html

A tiny refinement of my phrasing. What I wrote:

> 
>    "A complete condition MUST be possible to be matched in all Roles that
>    participate in the Choreography, for which we assume an appropriate
>    idea of synchronisation."
> 

may better be:

      "A complete condition MUST be possible to be matched in all Roles that
      participate in the Choreography, for which we assume that consistent,
      unanimous agreement among the Roles can be reached on the current
      state of the complete condition by the help of, for example, an
      appropriate synchronisation protocol."

Note by saying "unanimous agreement" we assume each process is working all
right, even if there are exceptional circumstances: if some process ceases
to work or goes crazy, then we cannot use this mechanism, we need e.g.
voting, but this detail may not be suitable for CDL description. I note
this for drawing attention to possible scenarios the idea described above
can cope with.

kohei

Comment 4 Martin Chapman 2005-06-20 20:57:41 UTC
at June 2005 F2Fwe agreed to close wontfix:

http://lists.w3.org/Archives/Member/member-ws-chor/2005Jun/att-
0003/June_2005_F2F_minutes_-_0.txt
Comment 5 Martin Chapman 2005-07-14 16:20:20 UTC
group notification of status change: http://lists.w3.org/Archives/Member/member-
ws-chor/2005Jul/0004.html
Comment 6 Martin Chapman 2005-08-02 13:57:52 UTC
no comments from group so closed confirmed:

http://lists.w3.org/Archives/Member/member-ws-chor/2005Jul/0004.html