Opened 12 years ago

Closed 12 years ago

Last modified 12 years ago

#2211 closed Bug (fixed)

users get mixed messages when tracker errors occur

Reported by: jch Owned by: charles
Priority: Normal Milestone: 1.74
Component: libtransmission Version: 1.71
Severity: Normal Keywords:
Cc:

Description

I'm currently downloading a torrent for which something went wrong with the tracker; the torrent is downloading thanks to the DHT. I find the behaviour of transmission somewhat bizarre:

  • the main window shows the torrent in red, with the message "requested download is not authorized for use with this tracker";
  • the "trackers" pane indicates that "Tracker responded: OK (200)", with no further indication;
  • the "trackers" pane indicates that transmission is hitting the server every 3 minutes or so.

I believe that at least the following are wrong:

  • the tracker should only be hit once every 15 minutes or so, with the possibility to hit it manually more often;
  • the trackers pane should give more indication of what went wrong.

--Juliusz

Change History (8)

comment:1 follow-up: Changed 12 years ago by charles

jch: I agree that maybe we should ping the tracker less frequently.

however the rest of this ticket, I'm less sure of. What happened is this: in response to T's request, the tracker gave a valid HTTP 200 repsonse that contained the bencoded error message "requested download is not authorized for use with this tracker." There was no HTTP-level error. So, the tracker's error message was placed prominently in the main window.

I agree that users might confuse the two levels -- what we might call the Tracker Response and the HTTP Response. What would you suggest for clarifying this behavior?

comment:2 in reply to: ↑ 1 Changed 12 years ago by jch

Replying to charles:

however the rest of this ticket, I'm less sure of. What happened is this: in response to T's request, the tracker gave a valid HTTP 200 repsonse that contained the bencoded error message "requested download is not authorized for use with this tracker."

Yes, I understand that there are two protocol layers involved, but, as you justly note, that's none of the users' business. There's no reason they should be two distinct user-visible tracker statuses, and you should be combining the two:

  1. if the HTTP code is not 200, then the HTTP header is the user-visible status;
  1. if the HTTP code is 200 and the HTTP body is a Bittorrent error message, then the Bittorrent error message is the user-visible status;
  1. otherwise, the user-visible status is « everything okay », « cruising », or some such.

I'm not particularly attached to the details; the point I'm making is that there should not be two distinct user-visible statuses. (Note by the way that many web browsers get this wrong, by displaying a TCP error in a dialog box, but an HTTP error message in the main browser window -- they're thus exposing the different protocol layers in the UI. Firefox finally got it right in version 3.)

--Juliusz

comment:3 Changed 12 years ago by charles

  • Milestone changed from None Set to 1.74
  • Resolution set to fixed
  • Status changed from new to closed

Applied in r8893.

I think what's happening in part one of this ticket is that the default announce interval is being used, which was every 4 minutes prior to r8893.

The second part is implemented pretty much as described by jch in comment #2.

comment:4 Changed 12 years ago by charles

  • Component changed from Transmission to libtransmission
  • Resolution fixed deleted
  • Status changed from closed to reopened

comment:5 Changed 12 years ago by charles

  • Owner set to charles
  • Status changed from reopened to new

comment:6 Changed 12 years ago by charles

  • Resolution set to fixed
  • Status changed from new to closed

comment:7 Changed 12 years ago by charles

  • Summary changed from Behaviour when tracker barfs to the user gets mixed messages when tracker errors occur

comment:8 Changed 12 years ago by charles

  • Summary changed from the user gets mixed messages when tracker errors occur to users get mixed messages when tracker errors occur
Note: See TracTickets for help on using tickets.