Double Downloads in APUP 1.05
EMonk
16 Oct 2008
On a few occasions I've seen APUP acting rather strangely, with progress bars and messages flicking back and forth between two very different values continuously, duplicate messages at the end, etc. When this happens (not every time) there is generally a single error message shown when one of the two downloaders completes - something to do with an invalid queue index.
It looks like there are two copies of the download tasks running, both downloading the same items (for the most part) and doing the same things at the end. When one of the downloads finishes presumably it empties the download queue causing the second downloader to fail. Both downloaders then report their end state.
Any ideas what might be causing this?
It looks like there are two copies of the download tasks running, both downloading the same items (for the most part) and doing the same things at the end. When one of the downloads finishes presumably it empties the download queue causing the second downloader to fail. Both downloaders then report their end state.
Any ideas what might be causing this?
EMonk
16 Oct 2008
James
16 Oct 2008
Flickering can occur if APUP has encountered a server respose of 404 (file not found) during downloading, because the size of the download queue is then not calculated properly.
Flickering can also occur if download speeds fluctuate due to network delays, because APUP is recalculating the download speed over a very short time interval.
I have not looked at all of the source code, but I am sure that APUP maintains only a single download queue, downloading one file at a time. IIRC the download queue component is single threaded, so that cannot be the cause.
--
Flickering can also occur if download speeds fluctuate due to network delays, because APUP is recalculating the download speed over a very short time interval.
I have not looked at all of the source code, but I am sure that APUP maintains only a single download queue, downloading one file at a time. IIRC the download queue component is single threaded, so that cannot be the cause.
--



