FS#47519 - [libtorrent-rasterbar] deluge can't change torrent's state

Attached to Project: Arch Linux
Opened by Bruno Guerreiro (American_Jesus) - Thursday, 24 December 2015, 21:46 GMT
Last edited by Felix Yan (felixonmars) - Tuesday, 12 January 2016, 03:15 GMT
Task Type Bug Report
Category Packages: Extra
Status Closed
Assigned To Jan Alexander Steffens (heftig)
Felix Yan (felixonmars)
Architecture All
Severity Medium
Priority Normal
Reported Version
Due in Version Undecided
Due Date Undecided
Percent Complete 100%
Votes 29
Private No

Details

Description:
with "libtorrent-rasterbar 1:1.0.7-3" torrent stay always in pause. torrents works if resumed, but on ui the state stays in paused, with no infos about completed, downloading or % complete

Package version(s):
deluge 1.3.12-1
libtorrent-rasterbar 1:1.0.7-3
boost-libs 1.60.0-1

Output starting deluge:

/usr/lib/python2.7/site-packages/deluge/ui/gtkui/listview.py:250: GtkWarning: gtk_tree_model_sort_set_sort_column_id: assertion 'header != NULL' failed
self.treeview.get_model().set_sort_column_id(column_state.sort, column_state.sort_order)
Unhandled error in Deferred:


Traceback (most recent call last):
File "/usr/lib/python2.7/site-packages/deluge/component.py", line 112, in on_start
self._component_start_timer()
File "/usr/lib/python2.7/site-packages/deluge/component.py", line 106, in _component_start_timer
self._component_timer.start(self._component_interval)
File "/usr/lib/python2.7/site-packages/twisted/internet/task.py", line 168, in start
self()
File "/usr/lib/python2.7/site-packages/twisted/internet/task.py", line 213, in __call__
d = defer.maybeDeferred(self.f, *self.a, **self.kw)
--- <exception caught here> ---
File "/usr/lib/python2.7/site-packages/twisted/internet/defer.py", line 150, in maybeDeferred
result = f(*args, **kw)
File "/usr/lib/python2.7/site-packages/deluge/core/alertmanager.py", line 73, in update
self.handle_alerts()
File "/usr/lib/python2.7/site-packages/deluge/core/alertmanager.py", line 118, in handle_alerts
alert = self.session.pop_alert()
exceptions.TypeError: No to_python (by-value) converter found for C++ type: boost::shared_ptr<libtorrent::alert>
This task depends upon

Closed by  Felix Yan (felixonmars)
Tuesday, 12 January 2016, 03:15 GMT
Reason for closing:  Fixed
Additional comments about closing:  1:1.0.7-4
Comment by John (graysky) - Friday, 25 December 2015, 10:43 GMT
Same bug on my system with exactly the same Traceback.
Comment by Jacob S (Gourdcaptain) - Saturday, 26 December 2015, 05:27 GMT
I am also experiencing the same symptoms.
Comment by John (graysky) - Saturday, 26 December 2015, 12:09 GMT
It should be noted that downgrading to the following reverses the problem[1]:
libtorrent-rasterbar 1:1.0.7-3 --> libtorrent-rasterbar-1:1.0.7-2
boost-libs 1.60.0-1 --> boost-libs-1.59.0-5

1. https://bbs.archlinux.org/viewtopic.php?pid=1589289#p1589289
Comment by geosmin (geosmin) - Sunday, 03 January 2016, 07:38 GMT
Same thing here.
edit: confirmed that downgrading fixes the issue.
Comment by Andrew Resch (timegas) - Sunday, 03 January 2016, 17:47 GMT
The fix for libtorrent is here: https://github.com/arvidn/libtorrent/pull/354

Maybe we could get this patched in?
Comment by John (graysky) - Sunday, 03 January 2016, 18:54 GMT
@andrew - Did you apply the patch and verify functionality?
Comment by Andrew Resch (timegas) - Sunday, 03 January 2016, 18:58 GMT
I wrote the patch.
Comment by Martins Mozeiko (mmozeiko) - Sunday, 03 January 2016, 19:07 GMT
I applied patch and rebuilt libtorrent-rasterbar with boost 1.60. With it deluge now works correctly for me, can pause and resume torrents without problems.
Comment by John (graysky) - Sunday, 03 January 2016, 19:14 GMT
@andrew - Didn't know that. I see upstream merged it as well.
Comment by John (graysky) - Sunday, 03 January 2016, 19:30 GMT
I applied your patch and rebult libtorrent-rasterbar. As expected, it works correctly for me as well with boost 1.60. Good job.
Comment by minus (minus7) - Wednesday, 06 January 2016, 18:04 GMT
Quick fix for the PKGBUILD:
sed -i 's/register_ptr_to_python<std::auto_ptr<alert> >/register_ptr_to_python<boost::shared_ptr<alert> >/' bindings/python/src/session.cpp
Comment by mpan (mpan) - Thursday, 07 January 2016, 00:08 GMT
The patch seems to work for me.

I've posted a report to libtorrent-rasterbar ( FS#47651 ), as it's the actual source of the bug. Hopefully the issue will be fixed soon.
Comment by Sébastien Luttringer (seblu) - Monday, 11 January 2016, 19:57 GMT
I'm adding fyan to this bug report, as fix seems to be in of libtorrent-rasterbar.
Comment by Sébastien Luttringer (seblu) - Monday, 11 January 2016, 20:18 GMT
I tested too with a patched version of libtorrent-rasterbar and issue seems to be gone. Felix, would you mind if I push a patched version of this package?
Comment by Doug Newgard (Scimmia) - Monday, 11 January 2016, 20:21 GMT
libtorrent-rasterbar has a maintainer now! Thanks Felix!
Comment by Felix Yan (felixonmars) - Tuesday, 12 January 2016, 03:15 GMT
Sorry for the late response - it was midnight here.

Thanks seblu, I just went ahead and rebuild the package with the patch.

Loading...