From 9a2f7c2660b929e09f92ef5ed6a53aa583220151 Mon Sep 17 00:00:00 2001 From: jrandom <jrandom> Date: Thu, 30 Sep 2004 00:51:35 +0000 Subject: [PATCH] include the timeouts due to inability to find the leaseSet --- .../message/OutboundClientMessageJob.java | 24 ++++++++++++++----- 1 file changed, 18 insertions(+), 6 deletions(-) diff --git a/router/java/src/net/i2p/router/message/OutboundClientMessageJob.java b/router/java/src/net/i2p/router/message/OutboundClientMessageJob.java index b63b5443d6..a09a7bc18d 100644 --- a/router/java/src/net/i2p/router/message/OutboundClientMessageJob.java +++ b/router/java/src/net/i2p/router/message/OutboundClientMessageJob.java @@ -228,6 +228,7 @@ public class OutboundClientMessageJob extends JobImpl { LeaseSet ls = getContext().netDb().lookupLeaseSetLocally(_ls.getDestination().calculateHash()); if (ls == null) { try { + markTimeout(); getContext().netDb().store(_ls.getDestination().calculateHash(), _ls); } catch (IllegalArgumentException iae) { // ignore - it expired anyway @@ -460,6 +461,21 @@ public class OutboundClientMessageJob extends JobImpl { _log.debug(getJobId() + ": Built payload clove with id " + clove.getId()); } + /** + * a send or netDb lookup timed out, so lets update some stats to help + * determine why + * + */ + private void markTimeout() { + long messageDelay = getContext().throttle().getMessageDelay(); + long tunnelLag = getContext().throttle().getTunnelLag(); + long inboundDelta = (long)getContext().throttle().getInboundRateDelta(); + + getContext().statManager().addRateData("client.timeoutCongestionTunnel", tunnelLag, 1); + getContext().statManager().addRateData("client.timeoutCongestionMessage", messageDelay, 1); + getContext().statManager().addRateData("client.timeoutCongestionInbound", inboundDelta, 1); + } + /** * Keep an eye out for any of the delivery status message tokens that have been * sent down the various tunnels to deliver this message @@ -503,6 +519,7 @@ public class OutboundClientMessageJob extends JobImpl { } public String getName() { return "Lookup for outbound client message failed"; } public void runJob() { + markTimeout(); sendNext(); } } @@ -598,12 +615,7 @@ public class OutboundClientMessageJob extends JobImpl { _log.debug(OutboundClientMessageJob.this.getJobId() + ": Soft timeout through the lease " + _lease); - long messageDelay = getContext().throttle().getMessageDelay(); - long tunnelLag = getContext().throttle().getTunnelLag(); - long inboundDelta = (long)getContext().throttle().getInboundRateDelta(); - getContext().statManager().addRateData("client.timeoutCongestionTunnel", tunnelLag, 1); - getContext().statManager().addRateData("client.timeoutCongestionMessage", messageDelay, 1); - getContext().statManager().addRateData("client.timeoutCongestionInbound", inboundDelta, 1); + markTimeout(); _lease.setNumFailure(_lease.getNumFailure()+1); sendNext(); -- GitLab