Commit Graph

439 Commits

Author SHA1 Message Date
Charles Kerr 6f54cb01e6 (trunk libT) #2552 "torrent state doesn't change automatically anymore" new version of r9482 that doesn't have the problems pointed out in #2557 2009-11-09 06:36:47 +00:00
Charles Kerr b906c125ac (trunk libT) #2548: T's request queue can send out too many duplicate requests 2009-11-08 23:20:00 +00:00
Charles Kerr acc0ded449 (trunk libT) undo #2552's commit r9482 because it causes new problems. #2552 will need a different fix instead. 2009-11-05 15:41:54 +00:00
Charles Kerr 45e84d9ac6 (trunk libT) #2552: Torrent state doesn't change automatically anymore 2009-11-05 01:31:35 +00:00
Charles Kerr 4d817b0701 (trunk libT) undo r9465 + r9466, which was the experimental new request manager. It still still needs some tinkering before it's ready for the nightlies...(trunk libT) undo r9465 + r9466, which was the experimental new request manager. It still still needs some tinkering before it's ready for the nightlies...(trunk libT) undo r9465 + r9466, which was the experimental new request manager. It still still needs some tinkering before it's ready for the nightlies...(trunk libT) undo r9465 + r9466, which was the experimental new request manager. It still still needs some tinkering before it's ready for the nightlies...(trunk libT) undo r9465 + r9466, which was the experimental new request manager. It still still needs some tinkering before it's ready for the nightlies...(trunk libT) undo r9465 + r9466, which was the experimental new request manager. It still still needs some tinkering before it's ready for the nightlies...(trunk libT) undo r9465 + r9466, which was the experimental new request manager. It still still needs some tinkering before it's ready for the nightlies...(trunk libT) undo r9465 + r9466, which was the experimental new request manager. It still still needs some tinkering before it's ready for the nightlies...(trunk libT) undo r9465 + r9466, which was the experimental new request manager. It still still needs some tinkering before it's ready for the nightlies... 2009-11-02 00:17:30 +00:00
Charles Kerr 296411e093 (trunk libT) turn off a debugging message in the terminal 2009-11-01 03:56:10 +00:00
Charles Kerr 0a4d8602e0 (trunk libT) #2548: T's request queue can send out too many duplicate requests 2009-11-01 02:10:47 +00:00
Charles Kerr 35d8a00912 (trunk libT) another hammer-the-network-less patch like r9414 2009-10-29 18:11:10 +00:00
Charles Kerr 3680896a19 (trunk libT) #2508 atom->port never updated 2009-10-29 16:10:03 +00:00
Charles Kerr 7a4f22ba12 (trunk libT) use part of hexum's patch from <http://forum.transmissionbt.com/viewtopic.php?p=41572#p41572>. The part added sorts peers by their overall speed when deciding which ones to disconnect from first, and which to request from first. 2009-10-27 20:06:55 +00:00
Charles Kerr 2acc006807 (trunk libT) There seems to be a lot of talk about T hosing routers, preventing other network traffic, etc. As an experiment let's try reducing the number of new connections we allow per second and see if/how that affects performance. 2009-10-27 16:08:38 +00:00
Charles Kerr c85ee09fef (trunk) trunk's just been too stable lately. #2119: reload settings.json on SIGHUP 2009-10-23 03:41:36 +00:00
Charles Kerr 00197cc461 (trunk libT) undo today's earlier commit r9381 for #2508 -- looks like I introduced a bug into the patch. 2009-10-22 19:08:45 +00:00
Charles Kerr bb541fc8d6 (trunk libT) #2508: atom->port never updated 2009-10-22 15:05:56 +00:00
Charles Kerr 05c77cc975 (trunk) #1483: move completed torrents to a user-specified directory + #629: different file extension for incomplete files 2009-10-19 05:05:00 +00:00
Charles Kerr aad2a886be fix oops 2009-10-03 13:17:18 +00:00
Charles Kerr 412f0b40a2 (trunk libT) fix a crash reported by John Clay and silence a gcc warning 2009-10-03 13:15:32 +00:00
Charles Kerr 034d14639a (trunk libT) use tr_torrentName() instead of tor->info.name 2009-09-17 03:24:35 +00:00
Charles Kerr ff260ee2fb (trunk libT) fix a couple of compiler warnings from the last commit. 2009-09-10 03:28:55 +00:00
Charles Kerr 19b3a84133 (trunk libT) fix oops 2009-09-10 03:07:54 +00:00
Charles Kerr fb83a0464e (trunk libT) #2395: caching too many peers between sessions makes startup slow and uses too much memory (KyleK, stdisease, et al) 2009-09-10 02:20:35 +00:00
Charles Kerr 9a02f9e48e fix r9073 oops; I committed a few debugging changes by accident too 2009-09-08 20:02:51 +00:00
Charles Kerr b7821bfb16 delete the obsolete zsh bindings 2009-09-08 20:01:12 +00:00
Charles Kerr 23b3faada4 (trunk libT) #2372: 'Unregistered Torrent Pass' Pauses Download 2009-08-31 16:41:54 +00:00
Charles Kerr ed512c215f (trunk, libT) #2365: Peer settings for an individual torrent should override the global limit. 2009-08-31 15:59:43 +00:00
Charles Kerr 11717de1d0 (trunk libT) fix #2332: filesystem-based error messages lack context 2009-08-13 17:25:26 +00:00
Charles Kerr cb79214854 (trunk) remove trailing spaces 2009-08-10 20:04:08 +00:00
Charles Kerr b2e26ea90a (trunk libT) #2318: improve the peer lists used in the .resume file and in PEX 2009-08-07 05:41:33 +00:00
Charles Kerr 24bb159bfe (trunk libT) #2137: .resume file gets saved too frequently 2009-08-07 05:29:37 +00:00
Charles Kerr 67c1c6db95 (trunk libT) possible fix for #2301, which is a valgrind complaint about uninitialized memory being written to disk while saving the bencoded .resume file. this commit theorizes that the warning is caused by not zeroing out the tr_peer array before filling it, so the extra bits in tr_addresses' ipv4/ipv6 union were never initialized. if this theory is correct, this commit (which zeros the memory first) should fix the bug. 2009-08-07 00:58:34 +00:00
Charles Kerr a4767894e7 (trunk) #1400, #2308: differentiate warnings and errors; differentiate between local messages and messages from the tracker 2009-08-05 01:25:36 +00:00
Charles Kerr 33b45e72c6 (trunk libT) fix r8781 oops 2009-07-06 12:27:24 +00:00
Charles Kerr 90097785ca (trunk libT) #1841: Transmission doesn't stick to maximum peer limits 2009-07-05 18:28:36 +00:00
Charles Kerr 24746cff7f (trunk libT) minor #include futzing 2009-07-01 14:58:57 +00:00
Charles Kerr 8d52cc2adb (trunk libT) scrimp & save a few more bytes per each peer 2009-06-24 04:14:39 +00:00
Charles Kerr 5e208a2909 (trunk libT) save some memory, and an unnecessary malloc/free, for each torrent 2009-06-24 03:54:11 +00:00
Charles Kerr 683073855e (trunk libT) revert most of r8693 as a quick fix for a possible alignment issue on a NAS 2009-06-16 19:31:17 +00:00
Charles Kerr deb679dab0 (trunk libT) avoid an extra per-torrent malloc/free by aggregating its tr_bandwidth into its struct 2009-06-14 22:19:19 +00:00
Charles Kerr 8504baf7aa (trunk libT) #2022: Torrentbar shows wrong speeds: Webseed-peers aren't taken into account 2009-05-28 02:28:14 +00:00
Charles Kerr 3d7cc36424 (trunk) #7: DHT support. This is a work in progress... no gui/rpc support yet 2009-05-19 18:38:26 +00:00
Charles Kerr 8807c286c0 (trunk libT) fix r8394 oops reported by Ryoujin. hooray for having many eyes 2009-05-15 02:12:50 +00:00
Charles Kerr 1fc7f10b6c (trunk libT) #2035: Transmission causes wakeups by unnecessary polling 2009-05-13 20:54:35 +00:00
Charles Kerr 76d8410f7e (trunk libT) remove r8370's testing assertions 2009-05-11 16:04:31 +00:00
Charles Kerr f9aa317998 (trunk) improvements to peer-mgr.c. also, new temporary assert()s to help test them. 2009-05-09 06:08:21 +00:00
Charles Kerr 6559fbbd16 (trunk) support an X-Transmission-Session-Id header in the RPC server. Yesterday's approach of including the session_id in posted forms -- which is a typical approach -- isn't sufficient for Transmission, since it also allows remote access via JSON/RPC. (part 1 of 2. part 2 is kjg's web ui patch) 2009-05-08 14:56:11 +00:00
Charles Kerr f4dde1eb67 (trunk libT) omit some unnecessary tests on the bitfield checks. these seem small, but bitfields are always the top CPU abuser when I profile... 2009-04-11 03:24:36 +00:00
Charles Kerr 81766a8dcb (trunk libT) another possible fix for #1894: Crash when download finishes and seed ratio is already met 2009-04-09 14:10:31 +00:00
Charles Kerr 73b546c817 (trunk libT) possible fix for #1894: Crash when download finishes and seed ratio is already met 2009-03-30 05:30:28 +00:00
Charles Kerr f1d92708e7 (trunk) more speedlimit work 2009-03-28 16:47:01 +00:00
Erick Turnquist 2f8d56e77f (trunk libT) make IPv6's two IPv4-compatible address formats invalid peer addresses
IPv4 peers should only be seen from an IPv4-connected tracker.
2009-03-27 01:31:17 +00:00
Erick Turnquist dd7eb76718 (trunk libT) remove tr_suspectAddress() since all seems well 2009-03-27 01:14:25 +00:00
Charles Kerr 857b3dab10 (trunk libT) #1823: Ratio limit is only checked when peers are active 2009-03-01 13:56:22 +00:00
Charles Kerr c07180fa49 (trunk libT) #1829: age out the refill list every 10 seconds, not every 1 second 2009-02-25 22:15:04 +00:00
Charles Kerr 91940d1c07 (trunk libT) #1829: high CPU use in refillPiece() 2009-02-25 13:04:51 +00:00
Charles Kerr 3ce4f44a6e (trunk libT) more #1829 2009-02-18 22:25:13 +00:00
Charles Kerr f9e400a22d (trunk libT) a little more work on #1829 2009-02-18 21:27:44 +00:00
Charles Kerr b322fb2e54 (trunk libT) experimental fix for #1829: High CPU use in refillPulse() 2009-02-18 17:19:36 +00:00
Mitchell Livingston 3d1cf6ba0d assorted trivial cleanup 2009-02-17 04:00:53 +00:00
Mitchell Livingston 39b0108366 have the mac ui use libT's ratio settings (attempt 1); when seed ratio is reached in libT, set the seed ratio setting to "seed forever" 2009-02-14 21:15:57 +00:00
Charles Kerr 3f9a1d090b (trunk) #1787: add support for seeding ratio limiting in libtransmission 2009-02-13 18:23:56 +00:00
Charles Kerr 509465a85b (trunk libT) partial revert of r7825: back out the refillPulse() changes 2009-02-11 16:34:35 +00:00
Charles Kerr 08289b9d13 (trunk libT) #1748: possible fix for the kqueue corruption errors by consolidating the three per-torrent libevent timers into three session-wide timers. Since most people reporting this error have lots of torrents loaded, consider a hypothetical example: if you had 500 torrents, this patch will reduce 1,500 libevent timers down to just three timers. On top of that, those three have simpler life cycles too... 2009-02-04 16:58:52 +00:00
Charles Kerr 5812b9f05b (trunk libT) more debugging messages 2009-01-24 17:20:07 +00:00
Charles Kerr 06887c9e9e (trunk libT) better implementation of r7761 to take into account feedback from repattila in the forums 2009-01-20 15:47:25 +00:00
Charles Kerr 4cbbefd656 (trunk libT) bah, fix r7761 oops 2009-01-20 05:45:03 +00:00
Charles Kerr 69404a8c36 (trunk libT) when pruning out slow peers, don't prune if we don't have good candidates to replace them. 2009-01-20 03:32:54 +00:00
Charles Kerr 9c9c94a81d (trunk libT) discard peers from the tracker or pex that have a port of 0 or a multicast address. 2009-01-17 23:14:35 +00:00
Charles Kerr 7a91840639 (trunk libT) Remove tr_peerMgrHasConnections, it isn't used anywhere 2009-01-14 01:37:24 +00:00
Charles Kerr 486c55c1ed (trunk libT) peerMgr: operate directly on tr_torrent and not peerMgr+torrentHash 2009-01-13 21:00:05 +00:00
Charles Kerr 8b72408948 (trunk libT) Get rid of peer-mgr-private.h (from wereHamster) 2009-01-13 16:32:43 +00:00
Charles Kerr a13e0755f0 (trunk libT) close open files immediately after they're done downloading 2009-01-12 21:59:53 +00:00
Charles Kerr 2f6b56671f (trunk libT) win32 portability patch from Alexey 2009-01-11 17:02:04 +00:00
Charles Kerr fe816d8135 (trunk) update the GPL code's copyright dates 2009-01-10 23:09:07 +00:00
Charles Kerr 2702fc289a (trunk libT) finally get around to making upload-slots-per-torrent a settings.json option, thanks to friendly prodding from ful in #transmission 2009-01-09 15:45:44 +00:00
Charles Kerr 73d32850ed (trunk libT) fix refcount error in the new peer-io refcount code 2009-01-06 03:21:22 +00:00
Charles Kerr 3ff145f058 (trunk libT) two bugfixes in one: (1) fix leaking tr_handshake objects reported by BentMyWookie (2) fix yet another permutation of the tr_isBandwidth() assertion failure -- maybe the last one? -- reported by Waldorf 2009-01-06 00:24:44 +00:00
Charles Kerr 30a989f1df (trunk libT) fix the new-code errors reported by ZogG and Rolcol and Spaham 2009-01-05 18:20:47 +00:00
Charles Kerr 1b527610dd (trunk libT) yet another step in the debugging cycle, crash report from ZogG and Rolcol 2009-01-05 07:57:10 +00:00
Charles Kerr 124658791a (trunk libT) probably fix r7618 reported in #transmission by Rolcol 2009-01-05 06:45:08 +00:00
Charles Kerr 5ccd5a7700 (trunk libT) fix the much-hated "Assertion failed: (tr_isPeerIo( io ))". Also, repeated calls to tr_date() were taking up about 78% of the time in tr_stat(), so instead of calling multiple times, call it once in tr_stat() and pass that value around to the functions that need it. 2009-01-05 04:27:54 +00:00
Charles Kerr ca6dd89e10 (trunk libT) minor tr_ptrArray API cleanup 2009-01-04 16:59:15 +00:00
Charles Kerr 78cf80d3c0 (trunk libT) experimental code to get more peers faster 2009-01-03 07:23:26 +00:00
Charles Kerr 0d2d375125 (trunk libT) inline a few more torrent methods 2009-01-03 00:25:27 +00:00
Charles Kerr d756d6b58f (trunk libT) commit some debugging messages that were added to trackdown the multicast filter issue 2009-01-02 21:50:51 +00:00
Charles Kerr d202c5ecea (trunk libT) inline the ptrarray one-liners 2009-01-02 20:19:10 +00:00
Charles Kerr b41cf9f231 (trunk libT) avoid some unnecessary memory fragmentation... for composited objects that have a tr_bandwidth, contain the it directly rather than a pointer to one allocated elsewhere on the heap. 2009-01-02 19:56:06 +00:00
Charles Kerr 199e38dd66 (trunk libT) avoid some unnecessary memory fragmentation... for composited objects that have a tr_completion, contain the it directly rather than a pointer to one allocated elsewhere on the heap. 2009-01-02 17:01:55 +00:00
Charles Kerr 82c5aca513 (trunk libT) Remove UNUSED attribute, the function argument is being used 2009-01-01 18:36:58 +00:00
Charles Kerr 5381e20e9b (trunk libT) improve piece verification speed by providing a larger buffer, and add a mechanism to reuse it when verifying an entire torrent at once. 2008-12-31 18:08:13 +00:00
Charles Kerr 71864c18e2 (trunk libT) blockIteratorNew() was overallocating much more memory than it used. 2008-12-30 21:18:30 +00:00
Charles Kerr 2b4193b200 (trunk libT) remove obsolete tr_peerMgr.c's getConnectedPeers() 2008-12-30 08:20:16 +00:00
Charles Kerr 427f639664 (trunk libT) avoid some unnecessary memory fragmentation... for composited objects that have a tr_ptrArray, contain the tr_ptrArray directly rather than a pointer to one allocated elsewhere on the heap. 2008-12-29 08:54:36 +00:00
Charles Kerr 6f8e5352ab (trunk libT) fix connectivity error reported by Stargazer. Also, add more debug statements to track down errors like this in the future 2008-12-24 02:50:08 +00:00
Charles Kerr dfcc9173e5 (trunk libT) #include "session.h" cleanup from wereHamster 2008-12-23 17:27:15 +00:00
Charles Kerr acdd8c860c (trunk libT) minor cleanups found while diffing for backport to 1.4x in r7455 2008-12-22 00:52:44 +00:00
Erick Turnquist 38efb62100 add some debugging stuff to track down where some bogus addresses are coming from 2008-12-21 19:13:52 +00:00
Charles Kerr 72ded3b272 try to rework the bandwidth code yet again s.t. it satisfies all three: (1) fairly distributes bandwidth across all peers, (2) scales well in high-bandwidth situations, (3) is good at hitting and staying at bandwidth limits/goals 2008-12-20 22:19:34 +00:00
Charles Kerr d4b4f39754 test commit for vraa 2008-12-18 03:22:08 +00:00
Charles Kerr de24179d05 (trunk libT) fix assertion error reported by Rolcol earlier today in #transmission 2008-12-17 03:38:02 +00:00
Charles Kerr 1a7ab297ea (trunk libT) more runtime safety checks 2008-12-16 23:31:05 +00:00