Opened 7 years ago

Last modified 5 years ago

#2995 new bug

GTK UI loose connection with daemon

Reported by: shamael Owned by:
Priority: major Milestone: needs verified
Component: GTK UI Version: 1.3.14
Keywords: Cc:

Description

http://forum.deluge-torrent.org/viewtopic.php?f=7&t=54441&p=226006#p226006 The post explains what I'm facing since end of last week. The daemon itself seems always fine, deluge-console responsive, but no more action can be done in the GTK ui. Sometimes it's frozen after 1-5 sec but it can take longer. The daemon debug log shows nothing except the disconnection: [INFO ] 22:31:04 rpcserver:226 Deluge client disconnected: Connection to the other side was lost in a non-clean fashion: Connection lost. [INFO ] 22:31:04 rpcserver:226 Deluge client disconnected: Connection to the other side was lost in a non-clean fashion: Connection lost.

The GTK log as shown in the forum post does well see the access to preferences for example but notthing happen (not preference windows opened).

I upgraded from 1.3.13/LT 1.09 to PPA version 1.3.14/LT 1.0.11 with the same issue. I rebuilt the profile used from scratch (except state folder) and without plugin, same issue too

I reduced the number of torrents to the value prior the issue, the GTK UI and the profile has been completed cleaned and reinstalled too, , no impact.

Change History (5)

comment:1 Changed 7 years ago by shamael

Not clearly mentioned in the forum post but the Web ui is frequently disconnected from the daemon too, even with just the webpage open and no action. When it occurs and I try a new login, the custom password I configured does not work anymore (wrong password) and the default is working but resulting in a empty page. The connection manager shows the instance as offline. The only way to get it back is to restart deluge-web on the server. Somehow it loose the connection with daemon too

comment:2 Changed 7 years ago by shamael

UPDATE:

The root cause of the behavior change is the number of torrents. I've not the exact number but above 660 torrents the webui/GTK disconnection occur whatever the plugins installed. I suspect the RPC connection, can you have a look ?

I'm aware I'm running the daemon on an Raspberry Pi, leading to some limitation. However I can reproduce the issue even when cpu/network/IO/etc. are quiet. Running Kodi beside Deluge does not affect the issue and maybe the most valuable info: the daemon never stop serving leechers, only the UI connections are affected.

The behavior with the 3 available connections:

  • deluge-console: never affected by the issue, still shows correct info
  • Webui: disconnected. Re connection trial is weird: the default password "deluge" has to be used (otherwise "wrong password") but blank page displayed and disconnection again.
  • GTK ui: UI functional but disconnected from the daemon, debug show action engaged (click etc) but nothing can be achieved (open preferences, actoon on torrent, update of up/dl speed, etc.)

I suspect RPC connection drop. I removed for about 20 torrents loaded in Deluge for more than 6 months and added 2/3 new one (below critical ~660 so), rock stable again. Adding torrents above 700 and the daemon(and deluge-console) is fine but GTK/Webui disconnections are back.

comment:4 Changed 7 years ago by shamael

thx for your answer Cas. However I cannot match my issue with the provided link.

I'm always able to load the full list of my torrents but the disconnection of UI (GTK/Web) occurs randomly. I faced a +5sec disconnection as +20min after startup but always with a fully functional UI. I can almost say adding a single torrent can lead to rock solid UI to disconnections, even with no high CPU usage/low IOPS/tcp delay.

comment:5 Changed 5 years ago by amagill

Running deluged 1.3.10-3+deb8u1 server on a linux machine, and a Deluge 1.3.12 client on Windows 10. At the moment the Windows UI lost its connection to the Linux server, I observed the following in the linux machine's syslog:

Oct  4 08:12:31 raspberrypi deluged[659]: Unhandled Error
Oct  4 08:12:31 raspberrypi deluged[659]: Traceback (most recent call last):
Oct  4 08:12:31 raspberrypi deluged[659]: File "/usr/lib/python2.7/dist-packages/deluge/main.py", line 230, in start_daemon
Oct  4 08:12:31 raspberrypi deluged[659]: Daemon(options, args)
Oct  4 08:12:31 raspberrypi deluged[659]: File "/usr/lib/python2.7/dist-packages/deluge/core/daemon.py", line 171, in __init__
Oct  4 08:12:31 raspberrypi deluged[659]: reactor.run()
Oct  4 08:12:31 raspberrypi deluged[659]: File "/usr/lib/python2.7/dist-packages/twisted/internet/base.py", line 1192, in run
Oct  4 08:12:31 raspberrypi deluged[659]: self.mainLoop()
Oct  4 08:12:31 raspberrypi deluged[659]: File "/usr/lib/python2.7/dist-packages/twisted/internet/base.py", line 1201, in mainLoop
Oct  4 08:12:31 raspberrypi deluged[659]: self.runUntilCurrent()
Oct  4 08:12:31 raspberrypi deluged[659]: --- <exception caught here> ---
Oct  4 08:12:31 raspberrypi deluged[659]: File "/usr/lib/python2.7/dist-packages/twisted/internet/base.py", line 824, in runUntilCurrent
Oct  4 08:12:31 raspberrypi deluged[659]: call.func(*call.args, **call.kw)
Oct  4 08:12:31 raspberrypi deluged[659]: File "/usr/lib/python2.7/dist-packages/deluge/core/rpcserver.py", line 322, in dispatch
Oct  4 08:12:31 raspberrypi deluged[659]: self.sendData((RPC_RESPONSE, request_id, ret))
Oct  4 08:12:31 raspberrypi deluged[659]: File "/usr/lib/python2.7/dist-packages/deluge/core/rpcserver.py", line 197, in sendData
Oct  4 08:12:31 raspberrypi deluged[659]: self.transport.write(zlib.compress(rencode.dumps(data)))
Oct  4 08:12:31 raspberrypi deluged[659]: File "/usr/lib/python2.7/dist-packages/twisted/protocols/tls.py", line 530, in write
Oct  4 08:12:31 raspberrypi deluged[659]: self._write(bytes)
Oct  4 08:12:31 raspberrypi deluged[659]: File "/usr/lib/python2.7/dist-packages/twisted/protocols/tls.py", line 554, in _write
Oct  4 08:12:31 raspberrypi deluged[659]: sent = self._tlsConnection.send(toSend)
Oct  4 08:12:31 raspberrypi deluged[659]: File "/usr/lib/python2.7/dist-packages/OpenSSL/SSL.py", line 950, in send
Oct  4 08:12:31 raspberrypi deluged[659]: self._raise_ssl_error(self._ssl, result)
Oct  4 08:12:31 raspberrypi deluged[659]: File "/usr/lib/python2.7/dist-packages/OpenSSL/SSL.py", line 862, in _raise_ssl_error
Oct  4 08:12:31 raspberrypi deluged[659]: raise SysCallError(errno, errorcode[errno])
Oct  4 08:12:31 raspberrypi deluged[659]: exceptions.KeyError: 0

Note: See TracTickets for help on using tickets.