Opened 11 years ago
Last modified 9 years ago
#241 assigned defect
Intermittent phantom session on start-up of new session — at Version 1
Reported by: | madmonk | Owned by: | madmonk |
---|---|---|---|
Priority: | minor | Milestone: | |
Component: | Server | Keywords: | |
Cc: |
Description (last modified by )
I was doing some basic testing of the application in this instance simulating start-up / shut-down of an application session looking for freezes and failures etc. In this particular instance this was done by starting and stopping Firefox several times in a row. I noted that after a while I was accumulating additional unknown sessions that can not be recovered and that are marked as starting on the client but never progress.
Just to note that it seems that the additional phantom session appears when starting a new session rather than being left over from a session which did not terminate correctly.
System Details
Distributor ID: Ubuntu Description: Ubuntu 12.04.2 LTS Release: 12.04 Codename: precise 3.2.0-51-generic-pae #77-Ubuntu SMP Wed Jul 24 20:40:32 UTC 2013 i686 i686 i386 GNU/Linux Qt: 4.8.1 KDE Development Platform: 4.8.5 (4.8.5) KDE Daemon: $Id$ ii winswitch 0.12.20-1 tool to start and control remote sessions
[II] 2013/13/11 22:42:26.504197 applet.<module>() python version 2.7.3 (default, Apr 10 2013, 05:46:21) \n[GCC 4.6.3] [II] 2013/13/11 22:42:26.504295 applet.<module>() gtk version (2, 24, 10), pygtk version (2, 24, 0) [II] 2013/13/11 22:42:26.582558 main_loop.loop_init(True) twisted version 11.1.0 [II] 2013/13/11 22:42:26.583285 globals os.uname=('Linux', 'testx', '3.2.0-51-generic-pae', '#77-Ubuntu SMP Wed Jul 24 20:40:32 UTC 2013', 'i686') [II] 2013/13/11 22:42:26.586679 globals python package info: __version__=0.12.20 [II] 2013/13/11 22:42:26.586869 globals version=0.12.20 (svn revision unknown - unknown local modifications), \ built on winswitch.org by buildbot, 2013-11-05, release_build=True
Steps to reproduce
- 1 Start Firefox
- 2 Browse for a bit e.g. wikipedia, google etc.
- 3 Stop Firefox
- 4 Repeat (check Winswitch after step 1 for additional unknown session)
From server after shut-down of a Firefox app session
drwxrwxrwx 2 x x 4096 Nov 13 22:45 100 drwxrwxrwx 2 x x 4096 Nov 13 23:07 104 drwxrwxrwx 2 x x 4096 Nov 13 23:12 109 drwxrwxrwx 2 x x 4096 Nov 13 23:15 110
(Other session are also orphaned / unknown sessions from testing)
From server after start-up of new Firefox app session
drwxrwxrwx 2 x x 4096 Nov 13 22:45 100 drwxrwxrwx 2 x x 4096 Nov 13 23:07 104 drwxrwxrwx 2 x x 4096 Nov 13 23:12 109 drwxrwxrwx 2 x x 4096 Nov 13 23:15 110 drwxrwxrwx 2 x x 4096 Nov 13 23:16 113 drwxrwxrwx 5 x x 4096 Nov 13 23:16 116
Excerpt from client log...
[II] 2013/13/11 23:15:56.764592 XpraClientUtil.ended(<winswitch.util.process_util.SimpleLineProcess instance at 0x99d36ac>) session=ClientSession(:113 - xpra - closed), kill_client=True [DD] 2013/13/11 23:15:56.764764 SimpleLineProcess.processEnded([Failure instance: Traceback (failure with no frames): <class 'twisted.internet.error.ProcessDone'>: A process has ended without apparent errors: process finished with exit code 0.\n]) [DD] 2013/13/11 23:16:25.868591 WinSwitchApplet.start_menu_callback(<gtk.ImageMenuItem object at 0x99d95cc (GtkImageMenuItem at 0x967ed00)>,ServerConfig(browser:8796763313898),Command(Firefox Web Browser: firefox --no-remote %u)) [DD] 2013/13/11 23:16:25.871248 WinSwitchApplet.is_modifier_set() modifiers=[] [II] 2013/13/11 23:16:25.871319 WinSwitchApplet.do_start_session(ServerConfig(browser:8796763313898),Command(Firefox Web Browser: firefox --no-remote %u),xpra,None,None,False) [II] 2013/13/11 23:16:25.871384 WinSwitchApplet.attention(Starting Firefox Web Browser,None) [DD] 2013/13/11 23:16:25.871431 AppIndicatorTray.request_attention(Starting Firefox Web Browser,5) [DD] 2013/13/11 23:16:25.871836 XpraClientUtil.load_options_defaults() nothing to do: the file has not changed [DD] 2013/13/11 23:16:25.871903 ServerLineConnection.start_session(648fda4c3aba18dc2d6144a8bb2cce86,xpra,None,{'read_only': 'False', 'mmap': 'True', 'keyboard_sync': 'True', 'clipboard': 'True', 'encoding': '""'}) [DD] 2013/13/11 23:16:26.189093 ServerLineConnection.add_session([...]) existing=None, was_pre_connected_here=None, session=ClientSession(:116 - xpra - starting) [II] 2013/13/11 23:16:26.189269 ServerLink.add_port_forward(None,127.0.0.1,15117) adding new port forward [II] 2013/13/11 23:16:26.189399 ConchConnection.forward_port(12479,127.0.0.1,15117) [DD] 2013/13/11 23:16:26.189633 ServerLink.add_port_forward(12479,127.0.0.1,15117) forwarder=(<<class 'twisted.internet.tcp.Port'> of twisted.conch.ssh.forwarding.SSHListenForwardingFactory on 12479>, 12479, '127.0.0.1', 15117) [DD] 2013/13/11 23:16:27.314688 ServerLineConnection.add_session([...]) existing=None, was_pre_connected_here=None, session=ClientSession(:113 - xpra - starting) [II] 2013/13/11 23:16:27.314910 ServerLink.add_port_forward(None,127.0.0.1,15119) adding new port forward [II] 2013/13/11 23:16:27.315073 ConchConnection.forward_port(12480,127.0.0.1,15119)
Change History (2)
Changed 11 years ago by
Attachment: | pip-freeze.log added |
---|
comment:1 Changed 11 years ago by
Description: | modified (diff) |
---|---|
Owner: | set to madmonk |
Status: | new → assigned |
Two things that are likely to cause problems here, especially when combined:
- Firefox is very problematic because of the way it only allows a single instance at a time - by the time you start it again, it may still be confused about where it should run and try to run in the instance that you are shutting down. We are keeping track of commands that can only be run once and you should get a notification warning (DE permitting) when you try to start a second one. Except... if we are shutting it down or if it is stuck, then you may have more problems.
Not much more we can do about that I don't think...
- Session pre-loading and pre-connecting: this is what is causing those extra sessions you are seeing. Xpra is so fast to start that it makes little difference to startup time. When this is enabled and working properly - there is no difference to startup time between a local app and a "remotized" app, with it disabled you have to start the xpra server and client for each application - which may take about half a second.
To disable this feature, edit:
.winswitch/server/server.conf
And disable: prelaunch_enabled
then restart your server (or applet).
Does this help?
pip freeze