Opened 7 years ago

Last modified 7 years ago

#5428 new Bug

Idle status while seeding

Reported by: tals Owned by: jordan
Priority: Normal Milestone: None Set
Component: libtransmission Version: 2.81
Severity: Normal Keywords:
Cc:

Description

Sometime the status is IDLE while seeding.

$ transmission-remote -V
transmission-remote 2.81 (14128)

transmission-remote -l
ID     Done       Have  ETA           Up    Down  Ratio  Status       Name
   1   100%    8.32 GB  Done        68.0     0.0   43.3  Idle         MyTorrent

$ transmission-remote -t 1 -pi
Address               Flags         Done  Down    Up      Client
xx.xx.xxx.xxx         T?            0.4      0.0    98.0  µTorrent 3.3.0

NOTE: IP Address masked on purpose

Attachments (1)

ETAdisplayedButNotDownloading.png (9.9 KB) - added by tals 7 years ago.

Download all attachments as: .zip

Change History (16)

comment:1 Changed 7 years ago by jordan

I'm not able to reproduce this but will inspect the code and see if there are any obvious suspects.

Have you noticed any patterns in this bug's appearance that might help me to reproduce it in testing?

comment:2 Changed 7 years ago by tals

Actually not but let me watch it for a few days [I'll run a crond task to log the peers and statuses info every 15 minutes]

comment:3 Changed 7 years ago by jordan

Looks like forum user mle is experiencing this too: https://forum.transmissionbt.com/viewtopic.php?f=2&t=14942

comment:4 Changed 7 years ago by rb07

Isn't this #5396 ?

The forum issue is using 2.80, which has the #5396 bug, this report hasn't showed which version of the daemon is using, the transmission-remote version is useless.

comment:5 Changed 7 years ago by jordan

rb07, I agree.

tals, can you confirm the transmission-daemon's version by running transmission-remote -si?

comment:6 Changed 7 years ago by tals

$ transmission-remote -si
VERSION
  Daemon version: 2.81 (14128)
  RPC version: 15
  RPC minimum version: 1

comment:7 Changed 7 years ago by jordan

Bah, a different bug then. Grumble :)

comment:8 Changed 7 years ago by rb07

Different but similar in that the flag seems to be the problem.

In the other report we had the "interest" flag showing the wrong value; in this one it is the "choke" flag which shows the wrong value.

On a different topic: the connected peer is uTorrent 3.3.0, which has been banned from at least one site (TheBox), I don't know what failed in their testing, maybe the client doesn't follow the protocol (and never sent the unchoke message).

A heavy-handed fix would be to reset the flags that should have been reset by protocol messages when actual uploading/downloading is going on.

comment:9 Changed 7 years ago by tals

Agree. "choke" flag seems to be the problem. Have been running the script below every 15 minutes. However, the log file is still empty. As soon as the issue is reproduced I'll post the results.

#!/bin/sh

D_RUN=`ps | grep -c transmission-daemon`
LOG=/tmp/bug5428.txt

if [[ $D_RUN -ge 2 ]]; then
        for f in `transmission-remote -l | awk '{if ($6!="0.0" && $9=="Idle") print $1 }' | grep -o '[0-9]*'`
            do transmission-remote -t $f -pi >> $LOG
        done
        if [[ "$f" != "" ]]; then
                transmission-remote -l >> $LOG
        fi
fi

Changed 7 years ago by tals

comment:10 Changed 7 years ago by tals

Related issue: An incomplete torrent has ETA displayed and status 'Uploading' when two clients are connected: 1 Seeder, 1 Leecher [see attachment]

Expected Result: Status: 'Uploading & Downloading'

comment:11 Changed 7 years ago by jordan

fun stuff.

Yes, the stats code changed in 2.80 because I wanted to make the frequently-called function tr_torrentStat() noblocking, but it looks like there might be a bug in the new code that's triggering these bad stats in circumstances that I haven't triggered yet in testing :/

comment:12 Changed 7 years ago by rb07

No, comment 10 is not related.

The "Status" column is a function (in the code) of the actual speeds, not the completion, or the peers. "Up & Down" means (Up > 0 && Down > 0); if a user doesn't like it... then that is a different issue.

The flags is the issue here. That screen shot is showing the correct flags.


Not "actual speeds", but "active peers".

The connected seed is not sending anything, as the flag "d" shows.

Last edited 7 years ago by rb07 (previous) (diff)

comment:13 follow-up: Changed 7 years ago by jordan

rb07, I agree that the "Uploading" status is correct, but I don't think that's the complaint -- rather that he doesn't see why there's an ETA when there is a 0 download speed.

comment:14 in reply to: ↑ 13 Changed 7 years ago by rb07

Replying to jordan:

rb07, I agree that the "Uploading" status is correct, but I don't think that's the complaint -- rather that he doesn't see why there's an ETA when there is a 0 download speed.

That has nothing to do with the original report, that is what I was saying.

Here's the other similar case, and ETA when there's no upload speed, for so long that the status is Idle:

  46   100%   427.7 MB  3 days       0.0     0.0    1.2  Idle         Sample

this one makes perfect sense.

I agree that tals example is a little confusing. Should the status always show "Downloading" while the torrent is incomplete? ... that would make sense of the ETA, but looses the meaning of the status. Adding an "Idle & Up", "Down & Idle", to complement the "Up & Down"?

comment:15 Changed 7 years ago by tals

Logged one more result today:

transmission-remote -V
transmission-remote 2.81 (14128)

transmission-remote -l
ID     Done       Have  ETA           Up    Down  Ratio  Status       Name
   8   100%    8.22 GB  Done        95.0     0.0   40.2  Idle Sample_torrent

transmission-remote -t 8 -pi
Address               Flags         Done  Down    Up      Client
xx.xxx.xxx.xxx        T?I           0.4      0.0    77.0  µTorrent 3.3.0
Note: See TracTickets for help on using tickets.