Taken from bug 1175466 the description of original reporter: Actual results: dnf hangs for a very long time, eventually moves onto another mirror for the first 3 downloads and then on the 4th to 6th download hangs again as it returns to the dead mirrors. Expected results: past failures should be remembered and those mirrors are blacklisted for a certain length of time, certainly at least for this session, perhaps with the same timeout as the metadata.
Mirrors we can't connect to and which have no successful transfers are moved at the end of the list of mirrors. https://github.com/Tojaj/librepo/commit/f467d16c9ff2e66be4fb7c5e6c7d3ea692c3fd49
librepo-1.7.13-1.fc21 has been submitted as an update for Fedora 21. https://admin.fedoraproject.org/updates/librepo-1.7.13-1.fc21
Package librepo-1.7.13-1.fc21: * should fix your issue, * was pushed to the Fedora 21 testing repository, * should be available at your local mirror within two days. Update it with: # su -c 'yum update --enablerepo=updates-testing librepo-1.7.13-1.fc21' as soon as you are able to. Please go to the following url: https://admin.fedoraproject.org/updates/FEDORA-2015-1057/librepo-1.7.13-1.fc21 then log in and leave karma (feedback).
librepo-1.7.13-1.fc21 has been pushed to the Fedora 21 stable repository. If problems still persist, please make note of it in this bug report.