arvidn / libtorrent

an efficient feature complete C++ bittorrent implementation

Home Page:http://libtorrent.org

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Complete download loses some small amount after recheck

arvidjaar opened this issue · comments

Please provide the following information

libtorrent version (or branch):
Currently it is libtorrent-rasterbar2.0:amd64 2.0.8-1, but I was seeing it for a long time under previous releases as well.
platform/architecture:
Ubuntu 22.04
compiler and compiler version:
Whatever Ubuntu is using
please describe what symptom you see, what you would expect to see instead and
how to reproduce it.
Having torrent with multiple files - download some files, mark others as "do not download". Wait until files are downloaded completely (100%). Now mark some (not all) downloaded files as "do now download", delete them from disk and run recheck (the intent is to avoid errors due to missing files). Quite often the remaining 100% downloaded files are shown as incomplete (99.99% or something). When I mark them for download again I do see small amount being downloaded.

To explain the reason - I do it for large torrents split in several parts were, where complete size is too large to download at once.

I have seen it for long time with different torrent applications (deluge, transmission and now qbitorrent) for this reason I think it is underlying library issue. I currently have such torrent so I could enable debugging if needed.

Isn't it simply because those files share a piece? If you delete parts of those pieces they need to be downloaded again to verify those pieces (which are part of the files you still have selected).

@MassaRoddel
Yes, I guess you are right. I see that there is torrent v2 format which keeps independent dictionary for each file. I wonder if it is supported and used in the wild.