From c21a6a54f89343a2a3041a9d5ec9ead7ee11ab90 Mon Sep 17 00:00:00 2001 From: zzz <zzz@mail.i2p> Date: Mon, 5 Nov 2012 17:20:47 +0000 Subject: [PATCH] * PeerManager: Don't reorganize as often if it takes too long (ticket #765) --- router/java/src/net/i2p/router/peermanager/PeerManager.java | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/router/java/src/net/i2p/router/peermanager/PeerManager.java b/router/java/src/net/i2p/router/peermanager/PeerManager.java index 1cc82a46e5..bf3564298a 100644 --- a/router/java/src/net/i2p/router/peermanager/PeerManager.java +++ b/router/java/src/net/i2p/router/peermanager/PeerManager.java @@ -89,14 +89,16 @@ class PeerManager { super(_context.simpleTimer2(), REORGANIZE_TIME); } public void timeReached() { + long start = System.currentTimeMillis(); try { _organizer.reorganize(true); } catch (Throwable t) { _log.log(Log.CRIT, "Error evaluating profiles", t); } + long orgtime = System.currentTimeMillis() - start; long uptime = _context.router().getUptime(); long delay; - if (uptime > 2*60*60*1000) + if (orgtime > 1000 || uptime > 2*60*60*1000) delay = REORGANIZE_TIME_LONG; else if (uptime > 10*60*1000) delay = REORGANIZE_TIME_MEDIUM; -- GitLab