[FreeNX-kNX] $SESS_DISPLAY in server_startrestore_session()

Kai Lappalainen nxlist at httgmbh.net
Tue Dec 9 22:32:54 UTC 2008


Hello,

recently we've had some trouble with FreeNX under load not beeing able to 
start a new session, because the "stupid but working algo..." (comment from 
nxserver script!) was not really working. ;-)

The problem was, that nxserver (in server_startrestore_session()) always tried 
to use the same $SESS_DISPLAY, which was locked somehow(?) - eventhough no 
lock-files existed. 
The reason for the "lock" could not be found. There were no processes left 
running from the user who last successfully used this display number.

If we forced FreeNX to use the next display by manually "blocking" this faulty 
display number (touch /tmp/.X<displaynum>-lock) people were able to login 
again using the next free (working) numbers.

The commercial NXServer uses another logic here: It does not search for the 
next free display number (starting from display-base) but instead always 
increments the display number, starting again at display_base when reaching 
the limit (round-robin).
It uses /usr/NX/var/db/running/display.{last} for storing the last used 
display number.

I modified nxserver to mimic this behaviour and hope there will be no more 
troubles in the future.

Maybe this should generally be implemented in FreeNX this way?

Best regards,
Kai Lappalainen
-- 
________________________________________________________________________
HOULDER TERRATRANS GMBH - Dorotheenstr. 82 - D-22301 Hamburg 
Commercial Register No.: Hamburg HRB 8674 - Management: Stefan W. Dircks



More information about the FreeNX-kNX mailing list