Commit Graph

66 Commits

Author SHA1 Message Date
Jimmy Zelinskie 1d9b2bc322 First step towards removing Tracker Driver.
This feature isn't worth maintaining and if anyone needs to scale beyond
memory on a single box, we can evaluate it then.
2014-08-13 17:45:34 -04:00
Jimmy Zelinskie fc18028796 Fix Purge reporting all peers as Seeders
PeerMaps now are constructed with a boolean value that tells the map
whether they are hosting seeders or leechers.
2014-08-05 06:57:48 -04:00
Jimmy Zelinskie 01fa778ce2 JSON Encoding for PeerMaps 2014-08-04 07:05:13 -04:00
Jimmy Zelinskie 9e45f77efe Create peermap.go, add documentation 2014-08-04 06:37:31 -04:00
Jimmy Zelinskie 3cb286fb40 Introduce thread-safe PeerMap 2014-08-04 06:15:08 -04:00
Justin Li d610b4ebb0 Address easy golint comments 2014-08-01 16:16:38 -04:00
Justin Li a55219963b Prevent unsigned overflow from breaking stats 2014-08-01 16:11:34 -04:00
Justin Li ac61c7880d Record raw upload/download 2014-08-01 16:07:10 -04:00
Jimmy Zelinskie 8051e0e22e Calculate delta based off of old peer 2014-08-01 15:51:26 -04:00
Jimmy Zelinskie 5622a3ded2 Only calculate delta if tracker is private 2014-08-01 15:19:27 -04:00
Jimmy Zelinskie f747a79c8c Calculate up/down delta before altering peer 2014-08-01 15:11:37 -04:00
Justin Li f48e1e452f Don't write to the peer maps in the announce code 2014-08-01 14:09:29 -04:00
Justin Li 2a12685007 Don't consider errored snatches to be snatches 2014-08-01 13:46:14 -04:00
Justin Li 6f514cbad5 Fix snatched logic to read seeder list before updating it
Refactor more
2014-08-01 13:35:35 -04:00
Justin Li 14fd5612af Remove user snatches (should be handled by backend) 2014-08-01 13:25:30 -04:00
Justin Li 24b4437edd Initial refactor to store more in the Announce 2014-08-01 13:24:24 -04:00
Justin Li bfd8e110ea Add a comment explaining why Peer.IP is unambiguous 2014-08-01 12:50:24 -04:00
Justin Li b628b934ac Only keep one IP in the Peer type 2014-08-01 12:37:35 -04:00
Jimmy Zelinskie e52e4d5f1d Introduce PeerKey
PeerKeys are used to prevent overwriting of peers which want to announce
for both IPv4 and IPv6.
2014-08-01 11:21:57 -04:00
Jimmy Zelinskie c438b877ba add error checking to loading whitelist 2014-07-26 06:15:40 -04:00
Jimmy Zelinskie ffb3c57181 move whitelist into cfg 2014-07-25 16:58:26 -04:00
Justin Li 818bef28d7 More refactoring of error handling 2014-07-25 03:05:43 -04:00
Jimmy Zelinskie 64d08ca16b add whitelist flag 2014-07-25 01:48:30 -04:00
Jimmy Zelinskie 941de3d12e goimports 2014-07-25 01:46:58 -04:00
Jimmy Zelinskie 788b349dd7 ClientError base type struct -> string 2014-07-24 19:34:17 -04:00
Justin Li b08195aeef Rename RequestsBlocked to ClientErrors and remove special cases from tracker code 2014-07-24 18:01:26 -04:00
Justin Li 02f67b4259 Create a ClientError type to distinguish between failure modes 2014-07-24 17:57:44 -04:00
Justin Li 98542c0ff1 Move tracker-specific logic out of http/query and into http 2014-07-23 15:56:15 -04:00
Justin Li b227fc1fcd Support dual-stacked peers 2014-07-23 13:15:04 -04:00
Justin Li 84195deb58 Correctly handle ErrBadRequest in the announce handler 2014-07-23 01:26:47 -04:00
Justin Li 9054c1364a Don't error if the client is sending a started event 2014-07-23 01:20:25 -04:00
Justin Li 6396990e52 Move errors to tracker/models 2014-07-23 00:37:30 -04:00
Justin Li 6c7abdfa2d Don't return an HTTP error for "bad request" tracker errors 2014-07-23 00:33:00 -04:00
Justin Li ba1ad7f5bf Prevent non-active peers from announcing events 2014-07-23 00:30:11 -04:00
Justin Li ce2e335562 Remove IPv4/IPv6 stats specializations and replace with RecordPeerEvent 2014-07-22 23:41:20 -04:00
Justin Li 11d06f7830 Put leecherFinished in announce.go and remove unnecessary code 2014-07-22 23:31:19 -04:00
Justin Li de69eaeafe Add current peer stats 2014-07-22 23:29:30 -04:00
Justin Li 539a1b3774 Implement *Reaped stats 2014-07-22 01:45:22 -04:00
Justin Li e17c984ec8 Fix semantics of seed stats, fix Peer.IPv6() always returning true 2014-07-22 01:06:30 -04:00
Jimmy Zelinskie 26f87139e0 remove needless ipv6 checks 2014-07-21 21:04:28 -04:00
Justin Li dc76657af3 Switch deleted torrent event 2014-07-21 20:49:17 -04:00
Jimmy Zelinskie 2c8894fbda rollout more stats 2014-07-21 20:24:51 -04:00
Jimmy Zelinskie 24f3e6b80b announce & scrape stats 2014-07-21 19:32:36 -04:00
Jimmy Zelinskie 477f292371 global stats 2014-07-21 19:08:08 -04:00
Justin Li 8f6aaa6527 Flesh out available stats more 2014-07-21 11:42:05 -04:00
Justin Li 7a849e6f20 Defer closing connections to prevent leaking them 2014-07-21 10:57:00 -04:00
Justin Li af57763882 Commit some staged changes 2014-07-21 10:53:26 -04:00
Jimmy Zelinskie 044333a75c add stats package; it is not yet integrated 2014-07-21 03:58:56 -04:00
Jimmy Zelinskie 6b260b7352 close tracker pool connections & some style changes 2014-07-21 03:58:07 -04:00
Jimmy Zelinskie e78dc74990 added Close to tracker 2014-07-21 03:54:22 -04:00