Hi there,
I have a severe issue with x2go. There are 4 Servers (ubuntu 20.04) and
a single PostgresQL Database running in Docker on a 5th device.
It all started after noticing that some users couldn´t resume sessions,
this seemed to spread to all users over several months. Restarting the
Server fixed the issue short term, but is not an option to do frequently.
Some things I noticed:
old references going to nowhere, but it does not happen.
- the users ~/.x2go gets filled up with references to
/tmp/.x2go-<user>/<session-id> and ofc /tmp gets populated accordingly.
Once a Session is closed, everything persists there. Since /tmp will be
cleaned on a restart, I would assume some job would also delete these
2. While I can click the "suspend" button on the client, the session
will not change on the server. Even manually running x2gosuspend-session
<session-id> on the server via e.g. ssh and checking the status via
x2golistsessions returns |R| for the session in question.
- when suspending a session, I would expect it to create a folder in
~/.cache/sessions/xfce4-session-<servername:number>. It does not. If I
try to connect to a still running (server side, but from client side
"suspended") session, it will either prompt a wrong credentials error or
continue normally, except no window will ever show up. In x2goclient
debug mode It will not whow the reappaering "searching proxy for window:
<session-id>" but will simply stop after:
"x2go-DEBUG-../src/sshmasterconnection.cpp:2065> Executing remote: "bash
-l -c 'echo "X2GODATABEGIN:cb3d39c0-4759-419a-a1da-7c6681410a50"; export
PATH="/usr/local/bin:/usr/bin:/bin";export TERM="dumb";
x2goresume-session <session-id> 800x600 lan nopack us auto 1 both no;
echo "X2GODATAEND:cb3d39c0-4759-419a-a1da-7c6681410a50";'"
x2go-DEBUG-../src/sshmasterconnection.cpp:2082> New exec channel created.
x2go-DEBUG-../src/onmainwindow.cpp:10344> Resolved localhost.
x2go-DEBUG-../src/onmainwindow.cpp:10372> Port already in use: 6002
x2go-DEBUG-../src/onmainwindow.cpp:10602> X.Org Server started on DISPLAY 2.
x2go-DEBUG-../src/onmainwindow.cpp:10824> All helper servers for Windows
are started."
No window shows, I can not resume a session. I can run terminate and it
will not show up anymore on the list on the client side or using
x2golistsessions, but it will still be there in the database.
- Having a look at the database, I can see thousands of entries. Most
of those sessions dont exist anymore, no user can connect to them, they
are not shown using x2golistsessions. I thought I could simply delete
them like shown in the wiki
(https://wiki.x2go.org/doku.php/wiki:advanced:multi-node:x2goserver-pgsql?s[]=x2godbadmin),
but it does not work. Trying to delete any entry will always result in
DELETE 0.
I hope someone has an Idea or that this is helpful in any way to debug
and improve x2go.
Best,
Jooris