Author: toad
Date: 2009-01-12 23:27:08 +0000 (Mon, 12 Jan 2009)
New Revision: 25044

Modified:
   trunk/freenet/src/freenet/io/xfer/BlockReceiver.java
   trunk/freenet/src/freenet/node/CHKInsertHandler.java
   trunk/freenet/src/freenet/node/RequestSender.java
Log:
Don't report transfer taking too long if it wasn't going to be reported to 
transfer backoff.


Modified: trunk/freenet/src/freenet/io/xfer/BlockReceiver.java
===================================================================
--- trunk/freenet/src/freenet/io/xfer/BlockReceiver.java        2009-01-12 
23:16:02 UTC (rev 25043)
+++ trunk/freenet/src/freenet/io/xfer/BlockReceiver.java        2009-01-12 
23:27:08 UTC (rev 25044)
@@ -68,16 +68,18 @@
        private MessageFilter discardFilter;
        private long discardEndTime;
        private boolean tookTooLong;
+       private final boolean _doTooLong;
 
        boolean logMINOR=Logger.shouldLog(Logger.MINOR, this);
        
-       public BlockReceiver(MessageCore usm, PeerContext sender, long uid, 
PartiallyReceivedBlock prb, ByteCounter ctr, Ticker ticker) {
+       public BlockReceiver(MessageCore usm, PeerContext sender, long uid, 
PartiallyReceivedBlock prb, ByteCounter ctr, Ticker ticker, boolean doTooLong) {
                _sender = sender;
                _prb = prb;
                _uid = uid;
                _usm = usm;
                _ctr = ctr;
                _ticker = ticker;
+               _doTooLong = doTooLong;
        }
 
        public void sendAborted(int reason, String desc) throws 
NotConnectedException {
@@ -87,6 +89,7 @@
        
        public byte[] receive() throws RetrievalException {
                long startTime = System.currentTimeMillis();
+               if(_doTooLong) {
                _ticker.queueTimedJob(new Runnable() {
 
                        public void run() {
@@ -103,6 +106,7 @@
                        }
                        
                }, TOO_LONG_TIMEOUT);
+               }
                int consecutiveMissingPacketReports = 0;
                try {
                        MessageFilter mfPacketTransmit = 
MessageFilter.create().setTimeout(RECEIPT_TIMEOUT).setType(DMT.packetTransmit).setField(DMT.UID,
 _uid).setSource(_sender);

Modified: trunk/freenet/src/freenet/node/CHKInsertHandler.java
===================================================================
--- trunk/freenet/src/freenet/node/CHKInsertHandler.java        2009-01-12 
23:16:02 UTC (rev 25043)
+++ trunk/freenet/src/freenet/node/CHKInsertHandler.java        2009-01-12 
23:27:08 UTC (rev 25044)
@@ -121,7 +121,7 @@
                        Message m = DMT.createFNPInsertTransfersCompleted(uid, 
true);
                        source.sendAsync(m, null, this);
                        prb = new PartiallyReceivedBlock(Node.PACKETS_IN_BLOCK, 
Node.PACKET_SIZE);
-                       br = new BlockReceiver(node.usm, source, uid, prb, 
this, node.getTicker());
+                       br = new BlockReceiver(node.usm, source, uid, prb, 
this, node.getTicker(), false);
                        prb.abort(RetrievalException.NO_DATAINSERT, "No 
DataInsert");
                        br.sendAborted(RetrievalException.NO_DATAINSERT, "No 
DataInsert");
                        return;
@@ -143,7 +143,7 @@
         prb = new PartiallyReceivedBlock(Node.PACKETS_IN_BLOCK, 
Node.PACKET_SIZE);
         if(htl > 0)
             sender = node.makeInsertSender(key, htl, uid, source, headers, 
prb, false, true);
-        br = new BlockReceiver(node.usm, source, uid, prb, this, 
node.getTicker());
+        br = new BlockReceiver(node.usm, source, uid, prb, this, 
node.getTicker(), false);
         
         // Receive the data, off thread
         Runnable dataReceiver = new DataReceiver();

Modified: trunk/freenet/src/freenet/node/RequestSender.java
===================================================================
--- trunk/freenet/src/freenet/node/RequestSender.java   2009-01-12 23:16:02 UTC 
(rev 25043)
+++ trunk/freenet/src/freenet/node/RequestSender.java   2009-01-12 23:27:08 UTC 
(rev 25044)
@@ -266,7 +266,7 @@
                                }
                                fireCHKTransferBegins();
                                                
-                               BlockReceiver br = new BlockReceiver(node.usm, 
pn, uid, prb, this, node.getTicker());
+                               BlockReceiver br = new BlockReceiver(node.usm, 
pn, uid, prb, this, node.getTicker(), true);
                                
                                try {
                                        if(logMINOR) Logger.minor(this, 
"Receiving data");
@@ -771,7 +771,7 @@
                                fireCHKTransferBegins();
                                                
                                long tStart = System.currentTimeMillis();
-                               BlockReceiver br = new BlockReceiver(node.usm, 
next, uid, prb, this, node.getTicker());
+                               BlockReceiver br = new BlockReceiver(node.usm, 
next, uid, prb, this, node.getTicker(), true);
                                
                                try {
                                        if(logMINOR) Logger.minor(this, 
"Receiving data");

_______________________________________________
cvs mailing list
[email protected]
http://emu.freenetproject.org/cgi-bin/mailman/listinfo/cvs

Reply via email to