Commit Graph

2035 Commits

Author SHA1 Message Date
Matt Joiner 189f1e364e Ditch ordering of prioritized chunks 2014-08-22 17:35:15 +10:00
Matt Joiner 95d5d4a30c Improve status and logging 2014-08-22 17:33:17 +10:00
Matt Joiner 60df4e100c Simplify dirwatch to scan the whole directory on changes 2014-08-22 17:31:03 +10:00
Matt Joiner 3e26952f2f Improve DHT distance tests 2014-08-22 03:45:31 +10:00
Matt Joiner 2410c3eddd Extract function generating all chunk specs for a piece 2014-08-22 03:42:38 +10:00
Matt Joiner 00a4e9bc11 Fix crash in metadata requests beyond available info bytes 2014-08-22 03:42:00 +10:00
Matt Joiner f4687ba28f Improve the log message for torrentfs reads 2014-08-22 01:37:34 +10:00
Matt Joiner edf0a13128 Export some log events via expvar instead 2014-08-22 01:33:13 +10:00
Matt Joiner 848636f830 Fix error in bitfield correction expression and off by one condition when metadata is completed 2014-08-22 01:26:41 +10:00
Matt Joiner 702665f9f3 Remove torrent from download strategy when dropped 2014-08-22 01:25:18 +10:00
Matt Joiner 4a7c94d04d Add test for dht.NewServer and change StopServing to Close 2014-08-21 21:12:50 +10:00
Matt Joiner e8f184a7bf Store pending peers in a dict to prevent duplicates 2014-08-21 21:10:19 +10:00
Matt Joiner 74f05db2ea Clean up imports 2014-08-21 21:08:56 +10:00
Matt Joiner cb68c984fa Move some tracker.CompactPeer into util 2014-08-21 21:07:44 +10:00
Matt Joiner 5c1492bffe Add CopyExact util function 2014-08-21 18:24:19 +10:00
Matt Joiner b8ae475625 Add TODO file 2014-08-21 18:13:41 +10:00
Matt Joiner 52fc7c7205 Improve the internal connection and handshake logic 2014-08-21 18:12:49 +10:00
Matt Joiner 40fd1d647c Tidy up the torrent and DHT APIs 2014-08-21 18:07:06 +10:00
Matt Joiner 96e44f8950 Print dht-ping reponses with %q 2014-08-17 00:44:05 +10:00
Matt Joiner 466c85a1b2 Triage upload contention due to lack of uploader routine 2014-07-24 13:46:49 +10:00
Matt Joiner 3a852886ad Triage announcer leak on dropped torrents 2014-07-24 13:46:14 +10:00
Matt Joiner 324fb94684 cmd/torrentfs: Missing listener on client 2014-07-24 13:45:49 +10:00
Matt Joiner cd7a758acd dht: Message only the most likely peers 2014-07-24 13:45:18 +10:00
Matt Joiner 8ff1c6f34a Support watching for ".magnet" files in torrent directory 2014-07-24 13:44:23 +10:00
Matt Joiner 9895205e19 Comments and logging 2014-07-24 13:43:45 +10:00
Matt Joiner ec1c4b0cf8 Improve client status 2014-07-24 13:43:11 +10:00
Matt Joiner ef7c4f4120 Move priority management entirely into the download strategies 2014-07-24 13:42:31 +10:00
Matt Joiner 1ceb470bfc torrentfs: Support torrents that don't yet have their metadata 2014-07-23 14:55:38 +10:00
Matt Joiner 7cc22565ed Abstract the status HTTP server into package util 2014-07-23 01:54:58 +10:00
Matt Joiner 6158b1f6ec torrentfs: Match the active torrents to those found in the given directory 2014-07-23 01:54:11 +10:00
Matt Joiner 6d52918540 Fix missed unlock adding peers to non-existent torrent 2014-07-23 01:51:30 +10:00
Matt Joiner 3ae290fef6 Fix crash printing client status if DHT isn't enabled 2014-07-23 01:50:49 +10:00
Matt Joiner 244c70bc83 Implement "yourip" field of extension protocol handshake 2014-07-22 21:45:12 +10:00
Matt Joiner 9edef94a2b Script that unblocks unit tests frozen in FUSE 2014-07-18 02:39:09 +10:00
Matt Joiner 6da2b7ee00 Fix peer_protocol test 2014-07-18 02:38:32 +10:00
Matt Joiner efb4c557d2 Put checks in place for peer addresses with a zero Port 2014-07-18 02:38:11 +10:00
Matt Joiner 7f6987b2a4 Error in connection.writer goroutine wasn't killing the connection 2014-07-18 02:37:33 +10:00
Matt Joiner 9c575b0454 dht_test: Add commented out test I haven't resolved yet 2014-07-17 16:05:21 +10:00
Matt Joiner 37eece626b TODO 2014-07-17 16:04:56 +10:00
Matt Joiner 65e1bbb6ba Show piece counts for peers in status page
Lets me visually check that connections agree on number of pieces.
2014-07-17 16:04:43 +10:00
Matt Joiner 99bec9ac58 dht: Timeout goroutines waiting for transaction responses 2014-07-17 16:03:59 +10:00
Matt Joiner b467f15bae Fix goroutine leak for connection.writer 2014-07-17 16:02:30 +10:00
Matt Joiner a258b9ab21 Squash some more debug messages, fix some other error handling 2014-07-17 16:01:48 +10:00
Matt Joiner b159968081 Missing newline between torrents in client status 2014-07-17 15:58:33 +10:00
Matt Joiner e092ba2c5f Use low-water mark to populate connection requests
I can't believe I didn't think of this before. It should address massive
performance problems I've had here.
2014-07-16 17:11:45 +10:00
Matt Joiner 7d587b832e Squash various unhandled DHT messages 2014-07-16 17:10:49 +10:00
Matt Joiner e2fc96cc5a Fix crash when KRPC messages don't contain a valid "t" field 2014-07-16 17:10:17 +10:00
Matt Joiner b30f3ba73e Correct the connection peer bitfields when the metadata becomes available 2014-07-16 17:09:30 +10:00
Matt Joiner 5cda3affb4 Memory leak because queued peer requests aren't treated yet 2014-07-16 17:08:47 +10:00
Matt Joiner 583d5c266a Squash some unhelpful log messages now that stuff is available in status 2014-07-16 17:08:25 +10:00