Matt Joiner
09823b9e36
Rework to improve work stealing and try to thread peers through all request pieces
2021-06-07 13:01:39 +10:00
Matt Joiner
4577e8a3c1
Forgot to remove initial have all state for webseeds
...
Later when the webseed was closed, it was assumed that it had contributed to the piece availability count.
2021-06-07 13:01:39 +10:00
Matt Joiner
16eb8a9693
Do requests every 100ms
2021-06-07 13:01:39 +10:00
Matt Joiner
a2fcce5374
Don't need stable sort
2021-06-07 13:01:39 +10:00
Matt Joiner
fc06909014
Improve naming on storage key
2021-06-07 13:01:39 +10:00
Matt Joiner
875ead3582
Reuse pieceRequestOrder slice
2021-06-07 13:01:39 +10:00
Matt Joiner
99a7cb9291
Missed piece availability code
2021-06-07 13:01:39 +10:00
Matt Joiner
d9172ef277
Comments
2021-06-07 13:01:39 +10:00
Matt Joiner
6d25c99ac6
Ignore pieces for request after accounting for storage
2021-06-07 13:01:39 +10:00
Matt Joiner
b508877d82
Track peer availability at the Torrent-level
2021-06-07 13:01:39 +10:00
Matt Joiner
2d2456249a
Remove unused pieceRequestOrder in Client
2021-06-07 13:01:39 +10:00
Matt Joiner
52e6979457
go mod tidy
2021-06-07 13:01:39 +10:00
Matt Joiner
977a3ec00f
Use multiless with Float64
2021-06-07 13:01:39 +10:00
Matt Joiner
9c9ba1aeac
PeerConn.post becomes PeerConn.write
2021-06-07 13:01:39 +10:00
Matt Joiner
56e2a8a3a6
Fix download rate, status output
2021-06-07 13:01:39 +10:00
Matt Joiner
5f8471e21b
Rework storage.TorrentImpl to support shared capacity key
2021-06-07 13:01:39 +10:00
Matt Joiner
6e97ce952f
Tidy up request and cancel
2021-06-07 13:01:39 +10:00
Matt Joiner
5f437e6b7f
Remove empty file
2021-06-07 13:01:39 +10:00
Matt Joiner
b2c68b314b
Limit outstanding requests
2021-06-07 13:01:39 +10:00
Matt Joiner
0830589b0a
Pass tests with new full-client request strategy implementation
2021-06-07 13:01:39 +10:00
Matt Joiner
56e5d08eff
Log failure to complete metadata
2021-06-07 12:57:42 +10:00
Matt Joiner
f5d2ba37bc
Count peers added from DHT for logging
2021-06-07 12:57:32 +10:00
Matt Joiner
d7c549d2e4
Add TODOs around setting info bytes
2021-06-07 12:57:09 +10:00
Matt Joiner
125d7f0e90
Create go.yml ( #497 )
...
* Create go.yml
* Go version 1.16
* Add benchmarks
* Match CircleCI test coverage
* Add 15 minute timeout
* Don't log to file
* Download modules in separate step, minimize test runs
* Install godo before running torrentfs end-to-end test
* More fixes
* More fixes for GitHub Actions CI
2021-06-07 12:44:51 +10:00
gitpubber
8f6f47a2e0
Added build tags to disable few packages if necessary ( #499 )
2021-05-25 18:48:59 +10:00
Matt Joiner
a60a4c9117
Progress testing without cgo a bit
2021-05-21 15:22:26 +10:00
Matt Joiner
b21aebeaae
Make wal the default for sqlite resource pieces
...
Fixes broken test as a result.
2021-05-17 11:56:10 +10:00
Matt Joiner
7798e2a306
Make synchronous=off the default
2021-05-17 11:56:10 +10:00
Matt Joiner
c585b84126
Set smarter defaults
2021-05-17 11:56:10 +10:00
Matt Joiner
fc0f2d146d
Set page size before initializing connections
...
Setting page_size seems to be ignored if done after setting journal_mode, specifically to WAL I think. There's huge performance benefits to getting it right.
2021-05-17 11:56:10 +10:00
Matt Joiner
ad421ea2d0
Default to sqlite piece completion for dir if cgo enabled
2021-05-14 15:51:26 +10:00
Matt Joiner
a4e84688ae
Fix sqlite piece completion
2021-05-14 15:45:54 +10:00
Matt Joiner
8654f1b01d
Move envpprof.Stop to main
2021-05-14 15:43:24 +10:00
Matt Joiner
8585eb09ba
Possible fix for GitHub code scanning warning
2021-05-14 15:43:13 +10:00
Matt Joiner
961cbfd765
Add CustomDirect BenchmarkMarkComplete sub-test
2021-05-14 15:42:54 +10:00
Matt Joiner
bdcba73cf9
Fix race in webtorrent dial stats
2021-05-14 15:42:25 +10:00
Matt Joiner
b9c36ebef3
cmd/torrent: Track download rate
2021-05-14 15:42:20 +10:00
Matt Joiner
a44f9921aa
Remove github.com/pkg/errors use in peerconn.go
...
Was contributing to unexpected CPU use, and it's way out of date.
2021-05-14 15:42:07 +10:00
Matt Joiner
f01d93cee0
Track chunks received in nexted expvar.Map
2021-05-14 15:42:02 +10:00
Matt Joiner
7b3e48b915
Expose SetSynchronous as an option
2021-05-14 15:41:56 +10:00
Matt Joiner
5030804b01
Fix race in MarkNotComplete
2021-05-14 15:41:28 +10:00
Matt Joiner
e5d21dbf34
Don't create blobs when reading
2021-05-14 15:41:23 +10:00
Matt Joiner
ee572c5822
Track peers supporting extension in a nested expvar.Map
2021-05-14 15:41:14 +10:00
Matt Joiner
b151514154
Tidy up sqlite direct piece receiver name
2021-05-14 15:40:59 +10:00
Matt Joiner
9feb85d0d1
Remove unused method
2021-05-14 15:40:38 +10:00
Matt Joiner
47284cf426
Rename Torrent.{add,delete}Connection
2021-05-14 15:39:01 +10:00
Matt Joiner
1080c837b9
Remove separate postedKeepalives expvar
2021-05-14 15:38:38 +10:00
Matt Joiner
4ab20f60b6
Improve some lock handling under panics
2021-05-14 15:36:53 +10:00
Matt Joiner
627b75c8b4
Merge branch 'sqlite-direct'
2021-05-14 15:36:35 +10:00
Matt Joiner
ef75fa47f8
Create SECURITY.md
2021-05-14 10:17:19 +10:00