1. 19 Feb, 2015 1 commit
  2. 14 Feb, 2015 1 commit
  3. 12 Feb, 2015 1 commit
  4. 10 Feb, 2015 1 commit
  5. 03 Feb, 2015 2 commits
  6. 02 Feb, 2015 8 commits
  7. 31 Jan, 2015 1 commit
    • Juan Batiz-Benet's avatar
      p2p/net: notify on listens · 98f2b077
      Juan Batiz-Benet authored
      Network now signals when it successfully listens on some address
      or when an address shuts down. This will be used to establish and
      close nat port mappings. It could also be used to notify peers
      of address changes.
      98f2b077
  8. 30 Jan, 2015 5 commits
  9. 29 Jan, 2015 4 commits
  10. 24 Jan, 2015 5 commits
  11. 23 Jan, 2015 1 commit
    • Juan Batiz-Benet's avatar
      reprovide: wait a minute before reproviding · 4a5f5e2e
      Juan Batiz-Benet authored
      Many times, a node will start up only to shut down immediately.
      In these cases, reproviding is costly to both the node, and the
      rest of the network. Also note: the probability of a node being
      up another minute increases with uptime.
      
      TODO: maybe this should be 5 * time.Minute
      4a5f5e2e
  12. 22 Jan, 2015 5 commits
  13. 19 Jan, 2015 2 commits
    • Brian Tiger Chow's avatar
      fix: return pointer · 59858540
      Brian Tiger Chow authored
      @whyrusleeping
      59858540
    • Brian Tiger Chow's avatar
      fix(bitswap.decision.Engine) enqueue only the freshest messages · 60e288ed
      Brian Tiger Chow authored
      Before, the engine worker would pop a task and block on send to the
      bitswap worker even if the bitswap worker wasn't to receive. Since the
      task could have been invalidated during this blocking send, a small
      number of stale (already acquired) blocks would be send to partners.
      
      Now, tasks are only popped off of the queue when bitswap is ready to
      send them over the wire. This is accomplished by removing the
      outboxChanBuffer and implementing a two-phase communication sequence.
      60e288ed
  14. 18 Jan, 2015 3 commits
    • Brian Tiger Chow's avatar
      move PQ to thirdparty · 76bea9be
      Brian Tiger Chow authored
      76bea9be
    • Brian Tiger Chow's avatar
      feat(PQ) · 61e4300d
      Brian Tiger Chow authored
      	refactor: peerRequestQueue
      
      	it's a mistake to make one queue to fit all. Go's lack of algebraic
      	types turns a generalized queue into a monstrosity of type
      	checking/casting. Better to have individual queues for individual
      	purposes.
      
      	Conflicts:
      		exchange/bitswap/decision/bench_test.go
      		exchange/bitswap/decision/tasks/task_queue.go
      
      	fix(bitswap.decision.PRQ): if peers match, always return result of pri comparison
      
      	fix(bitswap.decision.Engine): push to the queue before notifying
      
      	TOCTOU bug
      
      	1. client notifies
      	2. worker checks (finds nil)
      	3. worker sleeps
      	3. client pushes (worker missed the update)
      
      	test(PQ): improve documentation and add test
      
      	test(bitswap.decision.Engine): handling received messages
      
      	License: MIT
      Signed-off-by: default avatarBrian Tiger Chow <brian@perfmode.com>
      61e4300d
    • Brian Tiger Chow's avatar
      tests: add bench · 02393793
      Brian Tiger Chow authored
      License: MIT
      Signed-off-by: default avatarBrian Tiger Chow <brian@perfmode.com>
      02393793