Where communities thrive


  • Join over 1.5M+ people
  • Join over 100K+ communities
  • Free without limits
  • Create your own community
People
Repo info
Activity
  • 13:20
    yarikk opened #353
  • Dec 08 09:35

    anacrolix on master

    use path.utf8 first for some to… (compare)

  • Dec 08 09:35
    anacrolix closed #350
  • Dec 08 09:34

    anacrolix on master

    fix if statement in `cmd/torren… (compare)

  • Dec 08 09:34
    anacrolix closed #349
  • Dec 05 06:25
    nektro opened #352
  • Dec 05 06:22
    nektro opened #351
  • Dec 05 03:01
    wqsa opened #350
  • Dec 04 12:54
    yutao33 opened #349
  • Nov 30 08:53

    anacrolix on master

    Fix bytesLeft for files (#348) … (compare)

  • Nov 30 08:53
    anacrolix closed #348
  • Nov 29 01:41
    i96751414 opened #348
  • Nov 28 02:36

    anacrolix on master

    Change File.endPieceIndex calcu… Add comments on File.{first,end… Update deps (compare)

  • Nov 26 05:42
    anacrolix commented #344
  • Nov 26 00:54

    anacrolix on master

    Add BytesCompleted method for f… (compare)

  • Nov 26 00:54
    anacrolix closed #347
  • Nov 26 00:31

    anacrolix on master

    Include piece index in log mess… (compare)

  • Nov 25 23:16
    i96751414 synchronize #347
  • Nov 24 03:38
    i96751414 synchronize #347
  • Nov 22 01:19
    i96751414 opened #347
Meghan Denny
@nektro
hewwo?
i96751414
@i96751414
Hi guys
I have noticed something strange with piece priorities (I am not sure if I am doing stuff wrong or not)
If I start by setting all file piece priorities to normal
And then change some pieces to priority now, this will have no effect
is it not possible to set some pieces to priority now after we have already set the entire file to normal?
Matt Joiner
@anacrolix
@nektro did you create an issue for this?
@i96751414 the priorities of pieces should be the max of (individual piece priority, priorities of files containing that piece). it should be possible to set the priorities as you describe.
i96751414
@i96751414
Thanks @anacrolix
I believe it is not working that way... At least those pieces (set with priority now) were not prioritized on my test
I will retest this later today just to be sure
i96751414
@i96751414
Another question I have: do we have something similar to libtorrent's fastresume? I would like to save the torrents state so we can load those in a new session
Matt Joiner
@anacrolix
@i96751414 yes, by default most storage backends will store the piece state in a boltdb
you can use the verify methods on pieces and torrents to re-check, or it will figure it out if data is moved away or resized
note that changing priorities after requests have already been sent to peers may introduce some delay before the priority change becomes evident
i96751414
@i96751414
Thank you!
I tried setting priorities once again, and the same happened
Don't really know what to do here
The only way I am finding to get the pieces I want first is to set those pieces' priorities first and then the rest
i96751414
@i96751414
(I mean, when the download of the initial pieces finish)
Matt Joiner
@anacrolix
@i96751414 when you say it has no effect, do you mean it the priorities aren't changing in the client, or that those pieces just don't seem to be completing first?
i96751414
@i96751414
@anacrolix in fact I have not checked the priorities (I will do that just to be sure). Yes, they seem not to be completing first. Basically, when they complete, almost all the other pieces have completed as well... That's why I find it odd
i96751414
@i96751414
I did lots and lots of tests... The priorities seem no to be respected. Also, when mixing priorities it seems the download speed gets degraded. Once again, I might not be using the library correctly. Anyway, thank you for the answers
Matt Joiner
@anacrolix
@i96751414 how big are your files and pieces? the calculation at https://github.com/anacrolix/torrent/blob/3ba991e38aa4d0019e50c05df79651c0d16f3003/file.go#L140 may be off
i96751414
@i96751414
That seems ok
I am doing the same on my side
A side note: updatePiecePriorities is not including the last index
I believe it should include it, no?
Matt Joiner
@anacrolix
yes, it should
i suspect now that if your files are very small, it's possible that they're not being updated
i96751414
@i96751414
No, they are not small
it's 1GB movie (I am doing torrent sreaming)
I am implementing a sequential downloader (with a "seek" method). This way I don't have problems with priorities and the performance actually seems better
Matt Joiner
@anacrolix
it's worth mentioning that torrent.Reader is the best way to use the library
i96751414
@i96751414
yes
I was using it for this thing
Basically I was setting file priorities to Normal and then using a reader
Matt Joiner
@anacrolix
it would be helpful to know if the priorities are wrong, but it's a combination of File.prio, Piece.files, and some others. if you send me the metainfo/infohash, i could verify that it's parsed correctly for that info (you can send it privately if you like). alternatively, you can specify the piece length, and file lengths
i96751414
@i96751414
Ok
Give me a second
Matt Joiner
@anacrolix
@i96751414 there doesn't appear to be anything wrong with the file boundary stuff
most likely when you seek about with the rest of the file on "normal", it's not discarding existing requests in the pipeline like it would if you had the default to "none", so the time to see the first bytes for the new reader position is increased
it would require a different piece selection strategy to optimize that case, but you might just want to use the reader's default prioritization instead (unless you want to write a new request strategy that handles this case)
Matt Joiner
@anacrolix
@i96751414 one easy way to achieve more responsive changes to priorities, is to reduce the max outstanding requests
see connection.nominalMaxRequests
i96751414
@i96751414
Ok. I see the problems I am having are related with the requestStrategy
i96751414
@i96751414
I will try different approaches and see.
Yaroslav Kolomiiets
@yarikk
@anacrolix bits in missinggo/v2 depend on missingo/v1 – is that by design?
Matt Joiner
@anacrolix
@yarikk It's not really a problem, but feel free to flag them by creating issues on missinggo. I think I prematurely moved to version 2 on that repo, instead I should have created submodules, or broken out new repos.