]> Sergey Matveev's repositories - btrtrc.git/log
btrtrc.git
6 years agoInclude closed connections in dirtiers
Matt Joiner [Sat, 3 Feb 2018 01:08:16 +0000 (12:08 +1100)]
Include closed connections in dirtiers

6 years agoUse new logging in connection.go
Matt Joiner [Sat, 3 Feb 2018 01:06:52 +0000 (12:06 +1100)]
Use new logging in connection.go

6 years agoAdd missing increments to some stats
Matt Joiner [Sat, 3 Feb 2018 00:53:11 +0000 (11:53 +1100)]
Add missing increments to some stats

6 years agoRename and rearrange some conn stats
Matt Joiner [Fri, 2 Feb 2018 13:41:13 +0000 (00:41 +1100)]
Rename and rearrange some conn stats

6 years agorequest can be made from Reject and Cancel messages too
Matt Joiner [Fri, 2 Feb 2018 12:56:06 +0000 (23:56 +1100)]
request can be made from Reject and Cancel messages too

6 years agoTry to print something useful for MessageType panics
Matt Joiner [Fri, 2 Feb 2018 10:52:57 +0000 (21:52 +1100)]
Try to print something useful for MessageType panics

6 years agoBreak up peer_protocol into several files
Matt Joiner [Fri, 2 Feb 2018 10:29:57 +0000 (21:29 +1100)]
Break up peer_protocol into several files

6 years agoImplement go vet recommendations
Matt Joiner [Fri, 2 Feb 2018 08:28:09 +0000 (19:28 +1100)]
Implement go vet recommendations

6 years agoFactor out connection.onReadRequest
Matt Joiner [Fri, 2 Feb 2018 08:19:14 +0000 (19:19 +1100)]
Factor out connection.onReadRequest

6 years agoRework connection stat reconciliation with Torrent and refactor doppleganger handling
Matt Joiner [Fri, 2 Feb 2018 08:07:20 +0000 (19:07 +1100)]
Rework connection stat reconciliation with Torrent and refactor doppleganger handling

6 years agoMerge a bunch of stuff into ConnStats and refactor connection.upload
Matt Joiner [Fri, 2 Feb 2018 08:04:56 +0000 (19:04 +1100)]
Merge a bunch of stuff into ConnStats and refactor connection.upload

6 years agoCount requested chunk lengths
Matt Joiner [Fri, 2 Feb 2018 05:06:24 +0000 (16:06 +1100)]
Count requested chunk lengths

Have seen some very ridiculous lengths causing data read errors

6 years agoconnection.writer wasn't checking closed state
Matt Joiner [Fri, 2 Feb 2018 02:36:18 +0000 (13:36 +1100)]
connection.writer wasn't checking closed state

6 years agoMissed sendChunk invocation change
Matt Joiner [Fri, 2 Feb 2018 02:34:35 +0000 (13:34 +1100)]
Missed sendChunk invocation change

6 years agoMove sendChunk onto connection
Matt Joiner [Fri, 2 Feb 2018 02:26:04 +0000 (13:26 +1100)]
Move sendChunk onto connection

6 years agoWhen seeding, connections are not just useful when they're interested
Matt Joiner [Thu, 1 Feb 2018 07:49:53 +0000 (18:49 +1100)]
When seeding, connections are not just useful when they're interested

Improves peer selection when seeding is enabled, we're still downloading.

6 years agoSome changes to status output
Matt Joiner [Thu, 1 Feb 2018 07:45:58 +0000 (18:45 +1100)]
Some changes to status output

6 years agoMerge piece and chunk iter inputs to nextRequestState
Matt Joiner [Thu, 1 Feb 2018 05:14:13 +0000 (16:14 +1100)]
Merge piece and chunk iter inputs to nextRequestState

This will allow the iterator to filter chunks for request strategies.

6 years agoCode comments
Matt Joiner [Thu, 1 Feb 2018 03:46:48 +0000 (14:46 +1100)]
Code comments

6 years agoTrack concurrent requests across connections
Matt Joiner [Thu, 1 Feb 2018 03:46:03 +0000 (14:46 +1100)]
Track concurrent requests across connections

In preparation for some more request strategy options

6 years agoTestClientTransferRateLimitedUpload: Export client status
Matt Joiner [Thu, 1 Feb 2018 03:43:57 +0000 (14:43 +1100)]
TestClientTransferRateLimitedUpload: Export client status

6 years agosortimports
Matt Joiner [Wed, 31 Jan 2018 05:42:40 +0000 (16:42 +1100)]
sortimports

6 years agoUpdate context imports
Matt Joiner [Wed, 31 Jan 2018 05:42:26 +0000 (16:42 +1100)]
Update context imports

6 years agoFix panic in benchmark caused by new logging
Matt Joiner [Mon, 29 Jan 2018 08:16:55 +0000 (19:16 +1100)]
Fix panic in benchmark caused by new logging

6 years agoAdd some sanity checks to priorities extracted from Torrent.pendingPieces
Matt Joiner [Mon, 29 Jan 2018 07:21:37 +0000 (18:21 +1100)]
Add some sanity checks to priorities extracted from Torrent.pendingPieces

6 years agoSome test tidying and improvements
Matt Joiner [Mon, 29 Jan 2018 07:20:48 +0000 (18:20 +1100)]
Some test tidying and improvements

6 years agoMore development of the new logging interface
Matt Joiner [Mon, 29 Jan 2018 07:19:53 +0000 (18:19 +1100)]
More development of the new logging interface

6 years agoAdd Torrent.Stats.ConnectedSeeders
Matt Joiner [Mon, 29 Jan 2018 07:18:08 +0000 (18:18 +1100)]
Add Torrent.Stats.ConnectedSeeders

Fixes #231

6 years agoUpdate README.md
Matt Joiner [Sun, 28 Jan 2018 07:43:16 +0000 (18:43 +1100)]
Update README.md

Few small nitpicks.

6 years agoUpdate README.md
Matt Joiner [Sun, 28 Jan 2018 07:37:06 +0000 (18:37 +1100)]
Update README.md

Big changes to description, links, and downstream projects

6 years agoUpdate README.md
Matt Joiner [Sun, 28 Jan 2018 06:43:28 +0000 (17:43 +1100)]
Update README.md

Reorder the badges, I want to direct more people to the Gitter chat.

6 years agoStart using new log package
Matt Joiner [Sun, 28 Jan 2018 05:07:11 +0000 (16:07 +1100)]
Start using new log package

6 years agoSynchronize piece completion on piece hash failure
Matt Joiner [Sun, 28 Jan 2018 05:02:14 +0000 (16:02 +1100)]
Synchronize piece completion on piece hash failure

Pieces that were unknown, remained unknown despite hashing for that very reason.

6 years agoInclude completion known in PieceState
Matt Joiner [Sun, 28 Jan 2018 04:58:55 +0000 (15:58 +1100)]
Include completion known in PieceState

6 years agoRemove premature update to piece priority after piece is completed
Matt Joiner [Sun, 28 Jan 2018 04:52:14 +0000 (15:52 +1100)]
Remove premature update to piece priority after piece is completed

This should have prevented Torrent.piecePriorityChanged from being called, meaning requests for the completed piece were not canceled, and the piece remained in connection's piece request queue, which meant wasted effort downloading chunks for an already acquired piece.

Thanks to @elgatito for discovering the issue.

6 years agoUpdate Client.newConnection with changed rateLimitedReader interface
Matt Joiner [Sun, 28 Jan 2018 04:42:37 +0000 (15:42 +1100)]
Update Client.newConnection with changed rateLimitedReader interface

6 years agoFix download rate limiter and add test
Matt Joiner [Sun, 28 Jan 2018 04:28:45 +0000 (15:28 +1100)]
Fix download rate limiter and add test

6 years agoAvoid race in test
Matt Joiner [Sat, 27 Jan 2018 03:31:31 +0000 (14:31 +1100)]
Avoid race in test

6 years agobencode: Add ignore_unmarshal_type_error tag
Matt Joiner [Sat, 27 Jan 2018 03:31:12 +0000 (14:31 +1100)]
bencode: Add ignore_unmarshal_type_error tag

6 years agoInclude torrent stats in status
Matt Joiner [Sat, 27 Jan 2018 01:02:05 +0000 (12:02 +1100)]
Include torrent stats in status

6 years agoImprove Torrent.BytesCompleted comment
Matt Joiner [Sat, 27 Jan 2018 01:01:09 +0000 (12:01 +1100)]
Improve Torrent.BytesCompleted comment

6 years agoUpdate LICENSE
Matt Joiner [Sat, 27 Jan 2018 00:21:33 +0000 (11:21 +1100)]
Update LICENSE

6 years agobencode: Give more descriptive errors when failing to parse dicts
Matt Joiner [Thu, 25 Jan 2018 10:46:50 +0000 (21:46 +1100)]
bencode: Give more descriptive errors when failing to parse dicts

6 years agoFix peer_protocol benchmark
Matt Joiner [Thu, 25 Jan 2018 06:43:45 +0000 (17:43 +1100)]
Fix peer_protocol benchmark

6 years agoAdd TODO
Matt Joiner [Thu, 25 Jan 2018 06:43:33 +0000 (17:43 +1100)]
Add TODO

6 years agoFix benchmark job in CI
Matt Joiner [Thu, 25 Jan 2018 06:20:07 +0000 (17:20 +1100)]
Fix benchmark job in CI

6 years agoAdd separate piece priorities, and cache pending pieces
Matt Joiner [Thu, 25 Jan 2018 06:18:36 +0000 (17:18 +1100)]
Add separate piece priorities, and cache pending pieces

Should fix a bug where prioritizing files is not alone sufficient to trigger downloading.

6 years agoAdd Torrent.setInfo
Matt Joiner [Thu, 25 Jan 2018 06:10:37 +0000 (17:10 +1100)]
Add Torrent.setInfo

6 years agoImprove some comments
Matt Joiner [Thu, 25 Jan 2018 06:02:52 +0000 (17:02 +1100)]
Improve some comments

6 years agoFix file piece index offset calculations
Matt Joiner [Thu, 25 Jan 2018 06:01:29 +0000 (17:01 +1100)]
Fix file piece index offset calculations

6 years agoDon't lock Client in File.DisplayPath
Matt Joiner [Thu, 25 Jan 2018 05:58:49 +0000 (16:58 +1100)]
Don't lock Client in File.DisplayPath

6 years agoRun benchmarks in CI
Matt Joiner [Thu, 25 Jan 2018 05:57:38 +0000 (16:57 +1100)]
Run benchmarks in CI

6 years agoAdd some helpful comments to type PeerID
Matt Joiner [Thu, 25 Jan 2018 02:14:37 +0000 (13:14 +1100)]
Add some helpful comments to type PeerID

6 years agoAdd very tentative UPnP NAT traversal
Matt Joiner [Thu, 25 Jan 2018 02:14:20 +0000 (13:14 +1100)]
Add very tentative UPnP NAT traversal

Relates to #230

6 years agocmd/torrent: Fix logging when progress bar and stderr are the same file
Matt Joiner [Thu, 25 Jan 2018 02:12:46 +0000 (13:12 +1100)]
cmd/torrent: Fix logging when progress bar and stderr are the same file

6 years agoFix cmd/torrent -debug
Matt Joiner [Thu, 25 Jan 2018 02:11:32 +0000 (13:11 +1100)]
Fix cmd/torrent -debug

6 years agoImprove some log messages
Matt Joiner [Thu, 25 Jan 2018 02:10:52 +0000 (13:10 +1100)]
Improve some log messages

6 years agoAdd File priorities
Matt Joiner [Sun, 21 Jan 2018 11:49:12 +0000 (22:49 +1100)]
Add File priorities

Fixes #220.

6 years agoAdd comment explaining Torrent.requestStrategy
Matt Joiner [Fri, 12 Jan 2018 01:24:51 +0000 (12:24 +1100)]
Add comment explaining Torrent.requestStrategy

6 years agoMake Torrent.pendingPieces a priority bitmap in preparation for #220
Matt Joiner [Fri, 12 Jan 2018 01:24:37 +0000 (12:24 +1100)]
Make Torrent.pendingPieces a priority bitmap in preparation for #220

6 years agostorage: Export NewSqlitePieceCompletion
Matt Joiner [Fri, 12 Jan 2018 00:09:33 +0000 (11:09 +1100)]
storage: Export NewSqlitePieceCompletion

6 years agostorage: Don't check completion state on every write
Matt Joiner [Thu, 11 Jan 2018 23:45:19 +0000 (10:45 +1100)]
storage: Don't check completion state on every write

6 years agofile storage: Report errors getting completion
Matt Joiner [Thu, 11 Jan 2018 23:41:42 +0000 (10:41 +1100)]
file storage: Report errors getting completion

6 years agoClarify the PieceCompletion.Set method bool argument
Matt Joiner [Thu, 11 Jan 2018 11:10:52 +0000 (22:10 +1100)]
Clarify the PieceCompletion.Set method bool argument

6 years agoUpdate sqlite3 piece completion
Matt Joiner [Thu, 11 Jan 2018 11:10:00 +0000 (22:10 +1100)]
Update sqlite3 piece completion

6 years agoFix mentions of TorrentDataOpener
Matt Joiner [Thu, 11 Jan 2018 06:11:54 +0000 (17:11 +1100)]
Fix mentions of TorrentDataOpener

6 years agosortimports
Matt Joiner [Tue, 9 Jan 2018 12:12:01 +0000 (23:12 +1100)]
sortimports

6 years agoUse NoSync with bolt storage and piece completion
Matt Joiner [Tue, 9 Jan 2018 12:11:34 +0000 (23:11 +1100)]
Use NoSync with bolt storage and piece completion

Fixes terrible slowness on Linux.

6 years agoBegin restructuring testutil to support testing torrents with various properties
Matt Joiner [Tue, 9 Jan 2018 06:29:31 +0000 (17:29 +1100)]
Begin restructuring testutil to support testing torrents with various properties

6 years agoAdd some TODOs and tidy a test
Matt Joiner [Tue, 9 Jan 2018 06:26:46 +0000 (17:26 +1100)]
Add some TODOs and tidy a test

6 years agoScreen negative pieces
Matt Joiner [Tue, 9 Jan 2018 06:26:01 +0000 (17:26 +1100)]
Screen negative pieces

Should fix #228.

6 years agofixing wrong offset in request (#226)
Denis [Mon, 8 Jan 2018 00:03:34 +0000 (02:03 +0200)]
fixing wrong offset in request (#226)

6 years agoImprove comments on Config.{Upload,Download}RateLimiter
Matt Joiner [Sun, 7 Jan 2018 09:31:10 +0000 (20:31 +1100)]
Improve comments on Config.{Upload,Download}RateLimiter

See #225

6 years agoFile.offset wasn't applied to the reads on the Torrent
Matt Joiner [Sun, 7 Jan 2018 08:26:24 +0000 (19:26 +1100)]
File.offset wasn't applied to the reads on the Torrent

6 years agoFix a log format string
Matt Joiner [Sun, 7 Jan 2018 08:24:00 +0000 (19:24 +1100)]
Fix a log format string

6 years agoImprove various File related doc comments
Matt Joiner [Sun, 7 Jan 2018 00:57:02 +0000 (11:57 +1100)]
Improve various File related doc comments

6 years agoReaders obtained from File.NewReader should not readahead into other Files
Matt Joiner [Sat, 6 Jan 2018 12:15:41 +0000 (23:15 +1100)]
Readers obtained from File.NewReader should not readahead into other Files

Fixes #221. Additionally Torrent.length is a pointer and isn't set until the info is available to avoid it defaulting to zero.

6 years agoRename File.PrioritizeRegion to DownloadRegion
Matt Joiner [Sat, 6 Jan 2018 05:54:17 +0000 (16:54 +1100)]
Rename File.PrioritizeRegion to DownloadRegion

Fixes #223

6 years agomegacheck and staticcheck fixes
Matt Joiner [Sat, 6 Jan 2018 05:53:40 +0000 (16:53 +1100)]
megacheck and staticcheck fixes

6 years agocmd/torrent-pick: Close file Reader
Matt Joiner [Sat, 6 Jan 2018 05:41:05 +0000 (16:41 +1100)]
cmd/torrent-pick: Close file Reader

6 years agoReader: Changing responsiveness should wake blocked reads
Matt Joiner [Sat, 6 Jan 2018 05:40:35 +0000 (16:40 +1100)]
Reader: Changing responsiveness should wake blocked reads

6 years agommap_span: Synchronize access to memory maps to avoid race when unmapping
Matt Joiner [Sat, 6 Jan 2018 05:39:52 +0000 (16:39 +1100)]
mmap_span: Synchronize access to memory maps to avoid race when unmapping

6 years agostorage: Rename mmapStorage->mmapClientImpl
Matt Joiner [Sat, 6 Jan 2018 05:38:41 +0000 (16:38 +1100)]
storage: Rename mmapStorage->mmapClientImpl

6 years agoFormatting and comments
Matt Joiner [Sat, 6 Jan 2018 05:37:40 +0000 (16:37 +1100)]
Formatting and comments

6 years agoAdd File.NewReader
Matt Joiner [Sat, 6 Jan 2018 05:37:13 +0000 (16:37 +1100)]
Add File.NewReader

Fixes #222

6 years agoMake peerID a public type
Matt Joiner [Sat, 6 Jan 2018 04:50:45 +0000 (15:50 +1100)]
Make peerID a public type

Wanted it applied to Client Status output

6 years agoUse peerID type more, and make its Stringer output nicer
Matt Joiner [Sat, 6 Jan 2018 01:34:31 +0000 (12:34 +1100)]
Use peerID type more, and make its Stringer output nicer

6 years agoAdd the fs test torrent to the repo
Matt Joiner [Fri, 29 Dec 2017 02:50:26 +0000 (13:50 +1100)]
Add the fs test torrent to the repo

Debian keep moving it.

6 years agoUpdate error message in metainfo.Info.writeFiles
Matt Joiner [Fri, 29 Dec 2017 01:18:55 +0000 (12:18 +1100)]
Update error message in metainfo.Info.writeFiles

I think it was ripped out of some other code a long time ago.

6 years agoIntroduce metainfo.HashSize
Matt Joiner [Fri, 29 Dec 2017 01:17:58 +0000 (12:17 +1100)]
Introduce metainfo.HashSize

This will be useful when BitTorrent 2 is implemented, and helps with creating arbitrary Info.Pieces

6 years agoImprove some doc comments
Matt Joiner [Fri, 29 Dec 2017 01:16:05 +0000 (12:16 +1100)]
Improve some doc comments

6 years agoSurvive panics while writing chunks
Matt Joiner [Fri, 29 Dec 2017 01:15:33 +0000 (12:15 +1100)]
Survive panics while writing chunks

Also improve the comment on that code

6 years agoWhen queuing a piece for hashing after receiving a chunk, clear all the dirty chunks
Matt Joiner [Thu, 28 Dec 2017 12:59:30 +0000 (23:59 +1100)]
When queuing a piece for hashing after receiving a chunk, clear all the dirty chunks

This should fix a bug triggered by storage inconsistencies.

6 years agoImprove a log message
Matt Joiner [Thu, 28 Dec 2017 12:58:07 +0000 (23:58 +1100)]
Improve a log message

6 years agoMerge pull request #219 from elgatito/http_user_agent
Matt Joiner [Thu, 28 Dec 2017 10:05:55 +0000 (21:05 +1100)]
Merge pull request #219 from elgatito/http_user_agent

adding http user-agent setters and usage

6 years agoadding http user-agent setters and usage
Denis Kuzmenok [Thu, 28 Dec 2017 08:47:51 +0000 (10:47 +0200)]
adding http user-agent setters and usage

6 years agoadded disable_libutp build flag usage (#215)
Denis [Wed, 6 Dec 2017 00:56:26 +0000 (02:56 +0200)]
added disable_libutp build flag usage (#215)

6 years agoLog dropping of bad peers in debug mode only
Matt Joiner [Sun, 3 Dec 2017 02:44:37 +0000 (13:44 +1100)]
Log dropping of bad peers in debug mode only

6 years agomissinggo.LimitLen changed
Matt Joiner [Sun, 3 Dec 2017 02:44:08 +0000 (13:44 +1100)]
missinggo.LimitLen changed

6 years agoCode comments
Matt Joiner [Sat, 2 Dec 2017 13:35:09 +0000 (00:35 +1100)]
Code comments