[svn.haxx.se] · SVN Dev · SVN Users · SVN Org · TSVN Dev · TSVN Users · Subclipse Dev · Subclipse Users · this month's index

Re: Changing the way we do cancellation. (was: Re: [PATCH]: Let users cancel out of command line client immediately if they signal 3 times)

From: Stefan Küng <tortoisesvn_at_gmail.com>
Date: 2006-03-14 17:40:17 CET

kfogel@collab.net wrote:
> Mark Phippard <markp@softlanding.com> writes:
>> kfogel@newton.ch.collab.net wrote on 03/13/2006 05:04:48 PM:
>>
>>> So I might be +1 on just letting ^C do its thing without interference
>>> from us anymore, in Subversion 1.4. Does anyone else have thoughts on
>>> this? Are DannyB and I missing something important?
>> What are GUI tools like TortoiseSVN and Subclipse supposed to do? We need
>> an effective way to issue a Cancel as well.
>
> Sorry, let me be more sophisticated all over you:
>
> Our libraries would still have cancellation callbacks, and we'd still
> run them; we can even add more such checks.
>
> However, the command line client (one user of the libraries) would
> have a cancellation function that, when invoked, just exits.

If I may object a little:
the callbacks aren't enough for UI clients (and I guess other clients as
well). The problem with those is that some functions block (especially
network API calls) until they either finish or time out. So a simple
callback can't interrupt that and has to wait for a timeout, which can
take a long time. 'Long time' here means too long for a user who clicks
on a "Cancel" button and expects to have it work right away and not 30
seconds later.

The only way this could be done (on Windows at least) is by closing all
open handles the function uses. Closing a handle will make any API
return with an error immediately. But AFAIK there is no such function
neither in Subversion nor in apr. As long as such a function is missing,
UI clients will have a problem.

Stefan

-- 
        ___
   oo  // \\      "De Chelonian Mobile"
  (_,\/ \_/ \     TortoiseSVN
    \ \_/_\_/>    The coolest Interface to (Sub)Version Control
    /_/   \_\     http://tortoisesvn.tigris.org
---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@subversion.tigris.org
For additional commands, e-mail: dev-help@subversion.tigris.org
Received on Tue Mar 14 17:41:25 2006

This is an archived mail posted to the Subversion Dev mailing list.