[Cyberduck-trac] [Cyberduck] #927: Set queue / transfer item as "exclusive connection"
Cyberduck
trac at trac.cyberduck.ch
Tue Dec 19 01:40:11 CET 2006
#927: Set queue / transfer item as "exclusive connection"
-------------------------+--------------------------------------------------
Reporter: jamescat | Owner: dkocher
Type: enhancement | Status: reopened
Priority: normal | Milestone: 2.9
Component: core | Version: 2.6.2
Severity: normal | Resolution:
Keywords: |
-------------------------+--------------------------------------------------
Changes (by jamescat):
* resolution: duplicate =>
* status: closed => reopened
Comment:
I have to disagree with your resolution. This is not actually a duplicate
of #986 (especially since this came first, but that's an irrelevant
point), but is in fact merely a related concept.
In #986 (which I would agree is a good idea) there is a universal
preference setting for the maximum number of concurrent downloads across
all servers, as an additional restriction above and beyond the maximum
connections per server setting which already exists.
However, this request is really for a "one off" setting for individual
transfers in the queue. I think I should give an example of the desired
behavior to clear it up.
Say you have set a maximum of 3 transfers per server, and (assuming #986
is implemented) a max of 5 overall, and you want to download the following
list of files from servers A, B, C, and D:
* A/1.tbz
* A/3.txt
* B/19.pdf
* B/24.eps
* B/27.readme
* B/28.rtf
* C/46.dmg
* C/73.dmg
* C/78.dmg
* C/94.dmg
* D/141.txt
* D/197.pdf
* D/202.txt
* D/418.eps
However, files on server C (the DMG files) are each 700 MB and you are on
a wireless network which commonly disconnects you due to interference from
competing signals. - And to further complicate matters, server C is a
badly behaved server which doesn't allow resuming transfers! ''ICK''!!
Naturally, you wouldn't want to run the DMG file transfers concurrently,
because they should complete as quickly as possible in the hopes that you
won't be disconnected in the middle and loose all that progress. (If all 3
of your max-per-server value were running, you loose all the data from all
3, right? If only one is running you might finish it and get cut off in
the middle of the 2nd one, only wasting '''part''' of the time spent on
the queue.)
Yet, most of the time, and for the rest of the files in the queue you
don't want to limit yourself to just 1 download at a time because they may
be on servers which won't fill your bandwidth unless there are multiple
transfers going, plus they're nice servers which allow resuming anyway so
that the possibility of a disconnect is not so troublesome. So setting
your global max transfers setting to one is not really what you want to
do.
Herein, comes the need for a "per transfer" setting to provide
exclusivity. With such a setting, you could mark each of the DMG files as
exclusive and the download queue would proceed as such:
A/1.tbz, A/3.txt, B/19.pdf, B/24.eps, and B/27.readme (1st 5 files) would
start immediately.
When A/1.tbz finishes (assuming it's the first to do so) only the next 4
(still part of the 5) will continue to run, because the next file is from
server B and you have a max-per-server of 3, which is still full.
When at least one of the running B files finishes, B/28.rtf will start to
fill the empty "per server" slot, but C/46.dmg still won't start (even
though it's from a different server and would normally try to fill the
5-overall slot that is still empty) because you've marked it as
"exclusive" and it will wait until it has things all to itself.
When the first 6 have all completed, then C/46.dmg will start its
exclusive download. C/73.dmg will start when it is done, then C/78.dmg,
then C/94.dmg, each after the other.
Eventually, when C/94.dmg finishes, and the exclusivity settings no longer
apply, then the queue will pick up with D/141.txt, D/197.pdf, and
D/202.txt which will fill the 3-per-server max.
When one of them finishes, the final file D/418.eps will start. And the
queue will finish up with the last 3 files of your transfer queue
normally.
Anyway...
I hope that all makes sense. I'm sure it's too wordy, but I wanted to be
sure to get the precise point across this time. ;-)
Obviously, its entirely within your prerogative to re-close this ticket as
a "will not fix", but since it is not actually part of the same request
you thought it was, I have re-opened it for your continued consideration.
Thank you!
--
Ticket URL: <http://trac.cyberduck.ch/ticket/927>
Cyberduck <http://cyberduck.ch>
FTP and SFTP Browser for Mac OS X.
More information about the Cyberduck-trac
mailing list