W3C home > Mailing lists > Public > www-xkms@w3.org > October 2004

Re: Action item

From: Stephen Farrell <stephen.farrell@cs.tcd.ie>
Date: Thu, 07 Oct 2004 11:25:29 +0100
Message-ID: <41651999.7020807@cs.tcd.ie>
To: Tommy Lindberg <tommy.lindberg@gmail.com>
Cc: www-xkms@w3.org


Nice one Tommy!

How long do you think that'd take to get in place?

Stephen.

Tommy Lindberg wrote:
> I am responding to the action item that I took on from the last (28
> Sep) XKMS interop call.
> 
> The item relates to test case T7 and with all likelihood to other test
> cases that employ
> asynchronous processing.
> 
> Test case T7 specifies a sequence of requests along with the expected
> results in an asynchronous message exchange.  Specifically, the test
> case contains two StatusRequest's of which the first is expected to
> return a Pending status and the second is expected to return a Success
> status.
> 
> The issue is that "We cannot currently test 'long asynchronous'cases
> [with long delays between initial request and final result] since all
> of the servers answer almost immediately".
> 
> My comment during the call was that a client should not make
> assumptions about the delay in the processing that occurs between the
> initial request and completion of the request - this delay could be
> anything between minimal to considerable. As far as I can tell, the
> XKMS asynchronous protocol is not violated if this delay approaches
> zero.
> 
> I am currently taking the approach of operating my service endpoints
> with a minimal delay in
> this respect, something that both myself and others have found
> convenient as there is no
> out of band coordination required. Consequently a StatusRequest
> against my service will
> almost certainly never return the Pending status that the initial
> StatusRequest of T7
> expects.  I believe some other  implementors may have taken the same approach.
> 
> That said, I understand and accept that this is a protocol behaviour
> that requires interop
> testing.
> 
> Here are some of the options I considered for producing the final
> result of an asynchronous
> request in a way that would satisfy the wording of T7  (some of them
> more dubious than others):
> 
>   1) manually by the service operator
>   2) automatically after a fixed delay
>   3) a "lazy completion" approach that is triggered by the clients
> interest in the final result
>      i.e. the production of the final result is triggered by the first
> StatusRequest received.
>   4) a web based user interface through which the tester where he/she
> can invoke the final
>      result production by providing the required Id's
>   5) an XKMS message extension that allows for the specification of a delay
> 
> It turns out that by combining 3 and 2 I can with a relatively small
> effort produce the
> behaviour expected by T7 without sacrificing the convenience of
> unattended operation.
> Furthermore, this approach does not require any changes to the existing client 
> implementations.
> 
> The complete sequence:
> 
>   - the initial request processing will leave the status as Pending
>   - the first StatusRequest will trigger the final result processing
> and return the Pending
>     status
>   - subsequent StatusRequest's will find the final result produced and
> will therefore a return a
>     Success status
>   - a watch dog will ensure a configurable maximum delay (e.g. 15
> minutes) which when
>     reached, will also produce the final result
>   - a PendingRequest is used to pick up the final result
> 
> Regards
> Tommy
> 
Received on Thursday, 7 October 2004 10:23:22 GMT

This archive was generated by hypermail 2.2.0+W3C-0.50 : Tuesday, 27 October 2009 08:39:23 GMT