[FreeNX-kNX] $SESS_DISPLAY in server_startrestore_session()

Terje Andersen terander at guard.zapto.org
Tue Dec 9 23:42:19 UTC 2008


On Tue, 9 Dec 2008 23:32:54 +0100
Kai Lappalainen <nxlist at httgmbh.net> wrote:

> 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?
> 

That would be nice, yes. Could you please send this modification as a patch to this list?

Regards,
Terje




More information about the FreeNX-kNX mailing list