[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [Elist Home]
Subject: RE: Sanjay's simplification
I was thinking about what gets lost with the "refined negotiation" that involved vote changing and the multiple prepares etc. At first it seemed we were losing some ability to avoid contradictions, but I think this was partly a hang-over from old-style, centralised transaction thinking. The fundamental difference between old-style and BTP is that in old-style, the "participants" are slaves who are required (designed) to obey, in BTP they are volunteers who impose conditions on their level of commitment. So in this case, we can consider the autonomous decisions of the participant as something that occurs at a time determined by the participants own circumstances, and that this time is fundamentally unaffected by what is going on with these protocol messages. Asking it for extra promises won't change when that cancellation happens. The participant will often not know when this time is (e.g. the restaurant booking - the cancellation of your unconfirmed (and expired) reservation will occur when another party arrives to take the last table). If this happens to occur at a time when the superior is deciding to confirm, there is a contradiction. The superior could send another prepare, and a participant might decide in consequence to issue CANCELLED earlier than it would otherwise (this is sort of changing the vote, but really it is indistinguishable from the autonomous decision) With this change, a re-send of PREPARE does *not* mean the obligations implicit in the earlier READY offer (vote) are dropped - they still apply with the same strength as before (i.e. an autonomous decision can be made). Simplifies quite a lot. (I've been deliberately using the term "autonomous" decision, rather than heuristic. In fact they are equivalent, and the participant timeouts are essentially warnings of (greatly) increased probablility of the decision. But heuristic smacks of rare and exceptional, whereas, with the timeouts, they could be common.) Peter ------------------------------------------ Peter Furniss Technical Director, Choreology Ltd email: peter.furniss@choreology.com phone: +44 20 7670 1679 direct: +44 20 7670 1783 mobile: 07951 536168 13 Austin Friars, London EC2N 2JX > -----Original Message----- > From: Alastair Green [mailto:alastair.green@choreology.com] > Sent: 06 July 2001 07:39 > To: sanjay.dalal@bea.com > Cc: Biztran - Models > Subject: Sanjay's simplification > > > Sanjay, > > I believe that you are right (from last night's call). Your proposed > simplification, namely to remove the ability to change a > participant's vote if a > second or successive PREPARE is delivered, would work just fine. The more > "refined" negotiating behaviour is possible using a proprietary > qualifier if an > implementer wished to offer it. This fixed vote approach would also block > changes in vote from spontaneous to solicited. Every PREPARE > would simply cause > a replay in the case of a prior spontaneous vote. > > Peter then observes that we could move to having CANCELLED, READY > and RESIGN as > the three utterances of a participant, which means that READY can > be qualified > for timeouts etc, that there is no bi-valued VOTE message, and > that we end up > with even more simplification. > > If second scrutiny doesn't uncover any nasty flaws with this > scheme, I'm all for > it. > > Alastair > >
[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [Elist Home]
Powered by eList eXpress LLC