From 0e83eba6df1218ce4a0451d9f89ce65499e98187 Mon Sep 17 00:00:00 2001 From: shortcutme Date: Wed, 16 Nov 2016 11:22:38 +0100 Subject: [PATCH] Don't retry failed peer on optional file search --- src/Worker/WorkerManager.py | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/src/Worker/WorkerManager.py b/src/Worker/WorkerManager.py index 90442bc39..749e6bfdd 100644 --- a/src/Worker/WorkerManager.py +++ b/src/Worker/WorkerManager.py @@ -177,13 +177,15 @@ def findOptionalTasks(self, optional_tasks, reset_task=False): for task in optional_tasks: optional_hash_id = task["optional_hash_id"] if optional_hash_id in hashfield_set: + if reset_task and len(task["failed"]) > 0: + task["failed"] = [] + if peer in task["failed"]: + continue found[optional_hash_id].append(peer) if task["peers"] and peer not in task["peers"]: task["peers"].append(peer) else: task["peers"] = [peer] - if reset_task and len(task["failed"]) > 0: - task["failed"] = [] return found @@ -221,9 +223,9 @@ def addOptionalPeers(self, found_ips): task["peers"] = [] if peer not in task["peers"]: task["peers"].append(peer) + found[hash_id].append(peer) if peer.hashfield.appendHashId(hash_id): # Peer has this file peer.time_hashfield = None # Peer hashfield probably outdated - found[hash_id].append(peer) return found