Opened 9 years ago

Closed 9 years ago

Last modified 9 years ago

#4666 closed Bug (fixed)

webseed downloading never gets downloaded

Reported by: cfpp2p Owned by: jordan
Priority: Normal Milestone: 2.50
Component: Transmission Version: 2.42
Severity: Normal Keywords: backport-2.4x
Cc:

Description

webseed from server without resume capability. Transmission will download but never accumulate any data, staying at 0% indefinitely. Transmission should not use bandwidth to download absolutely nothing.

other clients don't download or give error:

[#1 SIZE:0B/7.4MiB(0%) CN:1 SEED:0 SPD:0Bs]
2011-12-12 17:51:24.957477 ERROR - CUID#10 - Download aborted. URI=http://ubuntuone.com/2Jysx1uJkpv5DPJAj96T6m
Exception: [AbstractCommand.cc:162] URI=http://ubuntuone.com/2Jysx1uJkpv5DPJAj96T6m
  -> [HttpResponse.cc:93] Invalid range header. Request: 0-0/7,797,480, Response: 0-7,710,994/7,710,995
[#1 SIZE:0B/7.4MiB(0%) CN:0 SEED:0 SPD:0Bs]

transmission downloads continuously but never gets the file.

Attachments (1)

bad-header.torrent (9.5 KB) - added by cfpp2p 9 years ago.

Download all attachments as: .zip

Change History (6)

Changed 9 years ago by cfpp2p

comment:1 Changed 9 years ago by jordan

  • Milestone changed from None Set to 2.50
  • Owner set to jordan
  • Status changed from new to assigned

comment:2 Changed 9 years ago by jordan

  • Keywords backport-2.4x added
  • Resolution set to fixed
  • Status changed from assigned to closed

fixed in r13112

Thanks for the test torrent. :)

comment:3 Changed 9 years ago by jordan

The webseed in question is downloading from an ubuntuone.com url. We ask for piece-sized ranges in a couple of different concurrent connections, and curl hints to the server that it's okay to gzip the response, or deflate it, or leave it raw. It looks like there's a bug in the server or in libcurl (or, somehow, Transmission) that's not compressing or decompressing these responses correctly -- we never get the right number of bytes in the response from libcurl. If we ask for the contents uncompressed, the download progresses towards completion.

As an aside, when testing this I noticed that deluge is a lot faster than Transmission on this torrent. In order for Transmission to reach parity here, webseed.c needs to know when it's appropriate to have more than 4 concurrent tasks and/or be able to request ranges > the torrent's piece size.

comment:4 Changed 9 years ago by cfpp2p

nice! :)

comment:5 Changed 9 years ago by cfpp2p

As an aside, when testing this I noticed that deluge is a lot faster than Transmission on this torrent. In order for Transmission to reach parity here, webseed.c needs to know when it's appropriate to have more than 4 concurrent tasks and/or be able to request ranges > the torrent's piece size.

I notice with my final tests I do today that transmission is not always slower than deluge (or other clients) on similar type webseed torrents. It depends on the server.

Note: See TracTickets for help on using tickets.