Currently, if prepare_next_transfer finds a complete zchunk file, it returns TRUE without moving on to the next file, which communicates to the thread that all downloads are done.
Luckily for us, there are normally other threads to finish downloading, but, if max_parallel_downloads is set to 1 in /etc/dnf/dnf.conf, this will have dnf fail to download the remaining metadata (whether zchunk or not) with the rather unhelpful error message: Not finished.
This patch fixes prepare_next_transfer to recursively check until it runs out of files to download or it finds an incomplete zchunk file.
Currently, if prepare_next_transfer finds a complete zchunk file, it returns TRUE without moving on to the next file, which communicates to the thread that all downloads are done.
Luckily for us, there are normally other threads to finish downloading, but, if
max_parallel_downloads
is set to 1 in /etc/dnf/dnf.conf, this will have dnf fail to download the remaining metadata (whether zchunk or not) with the rather unhelpful error message: Not finished.This patch fixes
prepare_next_transfer
to recursively check until it runs out of files to download or it finds an incomplete zchunk file.This fixes RHBZ #1706627