Changes between Version 3 and Version 4 of Ticket #1587


Ignore:
Timestamp:
Dec 11, 2008, 7:27:20 AM (12 years ago)
Author:
charles
Comment:

Legend:

Unmodified
Added
Removed
Modified
  • Ticket #1587 – Description

    v3 v4  
    11There are some stupid bugs in the peer manager which cause it to hold onto nonproductive peers longer than it should.
    22
    3 (1) for one thing, it looks at tr_peer.pieceDataActivityDate, even though it's never assigned.  In fact, both tr_peer.pieceDataActivityDate and tr_peer.peerSentPieceDataAt can go away -- we should be using atom.piece_data_time instead.
     3(1) It looks at tr_peer.pieceDataActivityDate to decide how long a peer's been idle, even though that variable is never assigned.  In fact, both tr_peer.pieceDataActivityDate and tr_peer.peerSentPieceDataAt should go away.  atom.piece_data_time does everything we need.
    44
    5 (2) the minimum timeout period is much too high for situations where we are rich with peers.  It makes no sense to hold onto bad peers for so long when there are other alternatives.
     5(2) the minimum timeout period is too high for situations where we are peer-rich.  This is more a judgement call than a bug, but it's true.
    66
    77(3) atom.piece_data_time is incorrectly updated whenever data is sent or received.  it should only be updated whenever ''piece data'' is sent or received.