[X2Go-User] Cant resume sessions X2Go + PostgreSQL

Jooris Mettler jooris.mettler1 at uni-oldenburg.de
Mon Jan 6 14:58:37 CET 2025


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:
1. 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 
old references going to nowhere, but it does not happen.

  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.

3. 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.

4. 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



More information about the x2go-user mailing list