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


Help: OASIS Mailing Lists Help | MarkMail Help

bt-models message

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

Subject: Re: interposition requirements

At 10:48 AM 5/1/01 +0100, Mark Little wrote:
>Mark (2)
>I always assumed that different web services sites has different 
>participants (sub-coordinator), at least one, but might have more. Looks 
>like it is one of the condition to be a BTP aware site (application) thus 
>I do not see a sub-coordinator propagation, may be I misunderstand what 
>you mean by sub-coordinator propagation...
>Not sure which Mark you mean, but I'll take a stab at it: first I don't 
>see that the participant and the sub-coordinator have to be different;

Per f2f definitions a service and a participant are different interfaces 
(they may be the same entity - implemantation detail) , a service has a 
business function interface while a participant has a BTP interface.

>  if a participating web service wants to propagate the context to other, 
> back-end (for example) web services then as well as doing it's own work 
> when it's told to "prepare" it sends this message to those back-end 
> services, i.e., it acts like a sub-coordinator.

It simply invokes a new service (depending on the context the 
sub-coordinator of service invoked may register with the root coordinator 
or with our sub-coordinator.)

>However, in order to do this, when it propagates the context to these 
>additional services it needs to re-write the context slightly so that the 
>coordinator URL is no longer the one that it received, but itself. 
>Obviously this means that the web service must support the coordinator 
>interface and appropriate functionality; if it can't then it can't do 
>interposition - it's as simple as that.
>We (at the f2f meeting) almost agreed on that there are interfaces for the 
>roles such as initiator, coordinator, participant (sub-coordinator) and 
>the service then it is up to the application (and web service site) to 
>implement these interfaces as a single entity or different entities..
>I don't think a participant *has* to be a sub-coordinator. If it's a leaf 
>node, and does no further invocations to other BTP-aware services, then 
>it's not coordinating anything other than its own work. Even if it does 
>propagate the context, it may be physically unable to act as a 
>sub-coordinator anyway.

Whether the service invoked implements both a business service interface 
and a BTP interface depends on the implementation but as far as BTP 
concerened there is an interface to coordinate the transaction, it might be 
the service it self - we don't know.
>Looks like there are pros and cons for both approach (flat structure or 
>tree like structure for coordination), may be it is better to let the 
>initiator make known its wish whether it wants to flat or tree like 
>structure and let the participants try to do their best to obey this wish 
>(propagate this wish to other participants)..
>I don't think this is a decision that the initiator can, or should, make. 
>It depends upon too many factors that the initiator can't and shouldn't be 
>aware of: implementation (does the web service support sub-coordinator 
>operations), business logic (what's going on at the back-end), 
>connectivity (can the root actually talk to all participants), ... I 
>believe this is a decision that only the propagating web service should 
>make (possibly with some configurable option based on the application.)
>It is really not more than a wish to have a flat transaction hierarchy 
>from the initiators point of view since any of the sub-coordinators can 
>always hide the sub-transactions from the main coordinator easily without 
>violating any protocol syntax (if we make a rule that it will always be a 
>flat structure, participants will violate the rule but still working ok)
>OK, as long as the requirement from the initiator is only a hint, and can 
>be ignored by the participating web services, I don't have a problem with 
>I also noticed that we have been using participant and sub-coordinator 
>interchangeable (which is ok since they are the same entity), can I 
>suggest to use the sub-coordinator (and/or local coordinator) in the body 
>of the protocol doc as an alias for participant?
>I've tried to use participant (web service) and sub-coordinator 
>separately, because one may not be the other.
>Dr. Mark Little (<mailto:mark@arjuna.com>mark@arjuna.com)
>Transactions Architect, HP Arjuna Labs
>Phone +44 191 2064538
>Fax   +44 191 2064203

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

Powered by eList eXpress LLC