On Tuesday 08 January 2008 00:46, you wrote:
> Author: robert
> Date: 2008-01-08 00:46:35 +0000 (Tue, 08 Jan 2008)
> New Revision: 16962
> 
> Modified:
>    trunk/freenet/src/freenet/io/xfer/BlockReceiver.java
>    trunk/freenet/src/freenet/io/xfer/BlockTransmitter.java
> Log:
> trivial: comments, logging, readability

Doesn't look that way to me e.g. timeAllSent affects when we kill the 
transfer. What's going on here?
> 
> 
> Modified: trunk/freenet/src/freenet/io/xfer/BlockReceiver.java
> ===================================================================
> --- trunk/freenet/src/freenet/io/xfer/BlockReceiver.java      2008-01-07 
> 20:56:43 
UTC (rev 16961)
> +++ trunk/freenet/src/freenet/io/xfer/BlockReceiver.java      2008-01-08 
> 00:46:35 
UTC (rev 16962)
> @@ -66,6 +66,7 @@
>       
>       public byte[] receive() throws RetrievalException {
>               int consecutiveMissingPacketReports = 0;
> +             boolean logMINOR=Logger.shouldLog(Logger.MINOR, this);
>               try {
>               while (!_prb.allReceived()) {
>                       Message m1;
> @@ -80,7 +81,7 @@
>                  _prb.abort(RetrievalException.SENDER_DIED, "Disconnected 
during receive");
>                  throw new 
RetrievalException(RetrievalException.SENDER_DISCONNECTED);
>              }
> -            if(Logger.shouldLog(Logger.MINOR, this))
> +            if(logMINOR)
>               Logger.minor(this, "Received "+m1);
>              if ((m1 != null) && m1.getSpec().equals(DMT.sendAborted)) {
>                               _prb.abort(m1.getInt(DMT.REASON), 
> m1.getString(DMT.DESCRIPTION));
> @@ -112,7 +113,7 @@
>                                               }
>                                       }
>                               }
> -                             if(Logger.shouldLog(Logger.MINOR, this))
> +                             if(logMINOR)
>                                       Logger.minor(this, "Missing: 
> "+missing.size());
>                               if (missing.size() > 0) {
>                                       Message mn = 
> DMT.createMissingPacketNotification(_uid, missing);
> 
> Modified: trunk/freenet/src/freenet/io/xfer/BlockTransmitter.java
> ===================================================================
> --- trunk/freenet/src/freenet/io/xfer/BlockTransmitter.java   2008-01-07 
20:56:43 UTC (rev 16961)
> +++ trunk/freenet/src/freenet/io/xfer/BlockTransmitter.java   2008-01-08 
00:46:35 UTC (rev 16962)
> @@ -84,9 +84,13 @@
>                                       try {
>                                               while (true) {
>                                                       
> synchronized(_senderThread) {
> -                                                             
> if(_unsent.size() != 0) break;
> +                                                             
> if(_unsent.size() != 0) {
> +                                                                     
> timeAllSent = -1;
> +                                                                     break;
> +                                                             }
>                                                               // No unsent 
> packets
>                                                               if(getNumSent() 
> == _prb.getNumPackets()) {
> +                                                                     //No 
> unreceived packets
>                                                                       
> if(Logger.shouldLog(Logger.MINOR, this))
>                                                                               
> Logger.minor(this, "Sent all blocks, none unsent");
>                                                                       
> if(timeAllSent <= 0)
> @@ -96,7 +100,6 @@
>                                                               
> _senderThread.wait(10*1000);
>                                                       }
>                                               }
> -                                             timeAllSent = -1;
>                                       } catch (InterruptedException e) {
>                                       } catch (AbortedException e) {
>                                               synchronized(_senderThread) {
> @@ -136,9 +139,8 @@
>                               }
>                       }
>  
> -                     /** @return True if _sendComplete */
>                       private void delay(long startCycleTime) {
> -                             
> +                             //FIXME: startCycleTime is not used in this 
> function, why is it passed 
in?
>                               long startThrottle = System.currentTimeMillis();
>  
>                               // Get the current inter-packet delay
> @@ -164,6 +166,7 @@
>                                       int x = (int) (Math.min(l, 120*1000));
>                                       if(x > 0) {
>                                               try {
> +                                                     //FIXME: if the 
> senderThread sleeps here for two minutes, that will 
timeout the receiver, no? Should this be a wait()?
>                                                       Thread.sleep(x);
>                                               } catch (InterruptedException 
> e) {
>                                                       // Ignore
> @@ -239,6 +242,7 @@
>                                       return false;
>                               if (msg == null) {
>                                       long now = System.currentTimeMillis();
> +                                     //SEND_TIMEOUT (one minute) after all 
> packets have been transmitted, 
terminate the send.
>                                       if((timeAllSent > 0) && ((now - 
> timeAllSent) > SEND_TIMEOUT) &&
>                                                       (getNumSent() == 
> _prb.getNumPackets())) {
>                                               synchronized(_senderThread) {
> @@ -280,9 +284,8 @@
>                                               _senderThread.notifyAll();
>                                       }
>                                       return false;
> -                             } else if(_sendComplete) {
> -                                     // Terminated abnormally
> -                                     return false;
> +                             } else {
> +                                     Logger.error(this, "Transmitter 
> received unknown message 
type: "+msg.getSpec().getName());
>                               }
>                       }
>               } catch (AbortedException e) {
> 
> _______________________________________________
> cvs mailing list
> cvs at freenetproject.org
> http://emu.freenetproject.org/cgi-bin/mailman/listinfo/cvs
> 
> 
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 189 bytes
Desc: not available
URL: 
<https://emu.freenetproject.org/pipermail/devl/attachments/20080110/a9dd1639/attachment.pgp>

Reply via email to