Issue 78: remove_torrent_from_client do not work
Status:  Accepted
Owner:
Project Member Reported by login...@gmail.com, Dec 23, 2012
My config:

remove_torrent_from_client="yes"
torrent_daemon_login="Leonard"
torrent_daemon_password="password"
torrent_daemon_port=""
torrent_daemon_bin="/usr/bin/xmlrpc"

Torrents are not removed from rTorrent.
I have installed xmlrpc in this way:

{{{
svn co https://xmlrpc-c.svn.sourceforge.net/svnroot/xmlrpc-c/advanced/ xmlrpc-c
cd xmlrpc-c 
./configure --disable-cplusplus 
make 
make install
}}}

This package of xmlrpc do not contain any xmlrpc binary, i have installed it by apt-get install libxmlrpc-c3-dev.
Dec 23, 2012
Project Member #1 addicted...@gmail.com
I'm sorry, I can't test rtorrent on my setup
I'll need you to send me the correct rtorrent removal command and I'll make the changes in torrentexpander
Thanks
Dec 23, 2012
Project Member #2 login...@gmail.com
Email sent
Dec 23, 2012
Project Member #3 addicted...@gmail.com
I'll try to take care of this by the end of the week
Thanks
Dec 30, 2012
Project Member #4 addicted...@gmail.com
Please give SVN build 191 a try

Thanks for your input

Addictedtoscreens
Dec 30, 2012
Project Member #5 login...@gmail.com
Strange..
The torrent remains, but the downloaded file is removed.
Dec 30, 2012
Project Member #6 login...@gmail.com
I think you are using an old syntax.
xmlrpc localhost system.listMethods
Look this.

WRONG:
xmlrpc localhost download_list main 
GOOD:
xmlrpc localhost download_list
log.txt
37.8 KB   View   Download
Dec 30, 2012
Project Member #7 addicted...@gmail.com
Hi

Using download_list instead of download_list main is one of the changes I made in SVN build 191
Are you sure you're using the latest build ?

Regarding your comment #5, I'm using d.close then d.erase. Is there another command I should use ?

Addictedtoscreend
Dec 30, 2012
Project Member #8 login...@gmail.com
Yes, sorry, the command is right, but the problem is present.
Dec 30, 2012
Project Member #9 addicted...@gmail.com
Hi

I may have an idea
Can you try replacing the "&&" by "&& sleep 5 &&" on lines 912 and 914 ?

Maybe rtorrent doesn't have enough time to stop the torrent before removing it

I'll let you tinker with this. I'm pretty sure we're close to the solution

Addictedtoscreens
Dec 30, 2012
Project Member #10 login...@gmail.com
It don't work
Dec 30, 2012
Project Member #11 addicted...@gmail.com
Hi

I'm really sorry, but I have no idea on how to solve this.
Unless the commands used in the script are wrong, there is nothing I can do.

Is it possible that this is an issue with your version of rtorrent ?
Please let me know if you find a solution.

Addictedtoscreens
Dec 30, 2012
Project Member #12 login...@gmail.com
Tested the code from 885 line to 917 and it works very well.
The problem must be the $torrent_name variable. In my tests i have set manually the variable and all went fine.
Dec 30, 2012
Project Member #13 addicted...@gmail.com
Hi

This might explain everything
Only problem is : the $torrent_name variable is set in lines 543 to 550 and those lines seem correct.
Could it be a permission issue ? When triggered by rtorrent, does torrentexpander have execute privileges on /usr/bin/xmlrpc ?

Thanks 
Dec 31, 2012
Project Member #14 login...@gmail.com
When rTorrent run torrentexpander i see in process manager the command xmlrpc (...) download_list. The program seems to be stuck doing this. 
Dec 31, 2012
Project Member #15 addicted...@gmail.com
Hi

As of now, I have two theories :
1/ This is a permission  issue
2 / There is no STDOUT and the command is stuck

A way to test theory #2 vould be to replace :
Line 888 : 'download_list' by 'download_list > /dev/null 2>&1'
Line 891 : 'download_list' by 'download_list > /dev/null 2>&1'
Line 897 : 'd.get_name "$id"' by 'd.get_name "$id" > /dev/null 2>&1'
Line 900 : 'd.get_name "$id"' by 'd.get_name "$id" > /dev/null 2>&1'

Jan 1, 2013
Project Member #16 login...@gmail.com
No changes.
I have seen that bug does not affects a single file in a torrent, only directory have this bug.
Jan 1, 2013
Project Member #17 addicted...@gmail.com
Great job
Now we know what to look for
The issue is situated in lines 543 to 550 ; or rather the way rtorrent passes its variables to torrentexpander.
Can you add a few lines in order to write down the content of these variables in a text file :
$TR_TORRENT_NAME
$TR_TORRENT_DIR
$torrent
$torrent_name
$current_folder
$folder_short

These lines have to be added before line 543, before line 547 AND before line 560.

The script must be run once with a torrent that can be deleted and another time with a torrent that cannot be deleted.

Once we have that, we will compare these variables against the actual name of the torrent.

Thanks