Open tiborsimko opened 3 years ago
@tiborsimko
if the file is partial, it would check whether the user used --resume option, and if yes, then would continue from that point, and if no, it would ask the user whether the resume or redownload is wanted.
I have a couple of musings.
We will know if a file is partially downloaded when it is not matching the checksum and size from the remote file.
How we plan to handle the resuming of download?
We will go like requests
-> pycurl
-> xrootd
and use inbuilt functionality from the respective library or you have some different approach in mind?
@katilp comment link on root forum: https://root-forum.cern.ch/t/running-time-dependence-on-cluster-distance-from-cern-for-jobs-on-gke-cluster-open-data/42447
Resuming of downloads
When one download a big 20 GB file, something can go wrong along the way, or the user can sleep or restart their machines. When this happens and user re-issues
download-file
command, this will start download again from zero, event though local directory already has parts of the file.The goal of this issue to resume interrupted downloads from the last good state.
How to reproduce:
The test record contains a big 20 GB file.
Now start a download and interrupt after a while:
and resume download from scratch again:
The downloader should recognise already available
15007/exactly2lep.zip
file and should continue from there.Note that the user can interrupt download any number of times until successful completion.
The behaviour could be configurable by a new
--resume
option, for example:--resume
option, and if yes, then would continue from that point, and if no, it would ask the user whether resume or redownload is wanted.rm ...
on the given file if the user would like not to do resume, but rather redownload.CC @katilp