Author: robert
Date: 2008-01-23 19:37:39 +0000 (Wed, 23 Jan 2008)
New Revision: 17216

Modified:
   trunk/freenet/src/freenet/node/CHKInsertSender.java
Log:
revert r16727: it only breaks chk pipelining


Modified: trunk/freenet/src/freenet/node/CHKInsertSender.java
===================================================================
--- trunk/freenet/src/freenet/node/CHKInsertSender.java 2008-01-23 18:56:33 UTC 
(rev 17215)
+++ trunk/freenet/src/freenet/node/CHKInsertSender.java 2008-01-23 19:37:39 UTC 
(rev 17216)
@@ -425,8 +425,8 @@
                        }

                        if(logMINOR) Logger.minor(this, "Sending data");
-            if(receiveFailed) return;
-
+                       startBackgroundTransfer(next, prb);
+                       
             while (true) {

                                if (receiveFailed)
@@ -477,11 +477,11 @@
                                        }
                                        // Finished as far as this node is 
concerned
                                        next.successNotOverload();
-                                       //RNF means that the HTL was not 
exhausted, but that the data should still be sent.
-                                       startBackgroundTransfer(next, prb);
+                                       //RNF means that the HTL was not 
exhausted, but that the data will still be stored.
                                        break;
                                }

+                               //Can occur after reception of the entire chk 
block
                                if (msg.getSpec() == DMT.FNPDataInsertRejected) 
{
                                        next.successNotOverload();
                                        short reason = msg
@@ -544,7 +544,6 @@
                                        // Our task is complete, one node 
(quite deep), has accepted the insert.
                                        next.successNotOverload();
                                        // The request will not be routed to 
any other nodes, this is where the data *should* be.
-                                       startBackgroundTransfer(next, prb);
                                        finish(SUCCESS, next);
                                        return;
                                }


Reply via email to