This is an automated email from the git hooks/post-receive script. x2go pushed a change to branch master in repository x2goserver. from 77ce2d2 x2goserver/sbin/x2gocleansessions: add @remembered_finished_sessions array. new d894b1a x2goserver/sbin/x2gocleansessions: don't add failed/finished sessions to remembered list if that list already includes them. new 87b97fb x2goserver/sbin/x2gocleansessions: don't use gmtime (time ()) but merely time (). new 4bd8d24 x2goserver/sbin/x2gocleansessions: add debugging output to show the state change when updating the cached state result. new 81fb801 x2goserver/sbin/x2gocleansessions: add timestamp to debug output. The 4 revisions listed above as "new" are entirely new to this repository and will be described in separate emails. The revisions listed as "adds" were already present in the repository and have only been added to this reference. Summary of changes: debian/changelog | 10 ++++++++++ x2goserver/sbin/x2gocleansessions | 18 ++++++++++++------ 2 files changed, 22 insertions(+), 6 deletions(-) -- Alioth's /srv/git/code.x2go.org/x2goserver.git//..//_hooks_/post-receive-email on /srv/git/code.x2go.org/x2goserver.git
This is an automated email from the git hooks/post-receive script. x2go pushed a commit to branch master in repository x2goserver. commit d894b1aa489ffb9103218e681c90f0c875802fce Author: Mihai Moldovan <ionic@ionic.de> Date: Tue Jun 23 15:40:17 2015 +0200 x2goserver/sbin/x2gocleansessions: don't add failed/finished sessions to remembered list if that list already includes them. Cherry-picked from release/4.0.1.x branch. --- debian/changelog | 2 ++ x2goserver/sbin/x2gocleansessions | 8 ++++++-- 2 files changed, 8 insertions(+), 2 deletions(-) diff --git a/debian/changelog b/debian/changelog index e67011b..be92575 100644 --- a/debian/changelog +++ b/debian/changelog @@ -220,6 +220,8 @@ x2goserver (4.0.1.20-0x2go1) UNRELEASED; urgency=low array. Merge with session list as queried from the database (won't include finished/failed sessions) and remember F-state sessions via this array. Only delete elements once work on these has been finished. + - x2goserver/sbin/x2gocleansessions: don't add failed/finished sessions to + remembered list if that list already includes them. * x2goserver.spec: - Add sudo and logcheck as BuildRequires and Requires. Don't own directories that are owned by sudo and logcheck. Logcheck is not diff --git a/x2goserver/sbin/x2gocleansessions b/x2goserver/sbin/x2gocleansessions index b9337fe..d94d6e2 100755 --- a/x2goserver/sbin/x2gocleansessions +++ b/x2goserver/sbin/x2gocleansessions @@ -211,8 +211,12 @@ elsif ($pid == 0 ) if (@sinfo[4] eq 'F') { - log_message ('debug', "@sinfo[1]: is blocked, adding to finished list."); - push (@remembered_finished_sessions, join ('|', @sinfo)); + log_message ('debug', "@sinfo[1]: is blocked."); + # Only add to finished list if it isn't in there already. + if (!(grep { ((defined ($_)) && ($_ =~ m/\Q@sinfo[1]\E/)) } @remembered_finished_sessions)) { + log_message ('debug', "@sinfo[1]: adding to finished list."); + push (@remembered_finished_sessions, join ('|', @sinfo)); + } # Kill the process if blocked for more than 20 seconds. if ((gmtime (time) - $remembered_sessions_status_since_time{@sinfo[1]}) >= 20) -- Alioth's /srv/git/code.x2go.org/x2goserver.git//..//_hooks_/post-receive-email on /srv/git/code.x2go.org/x2goserver.git
This is an automated email from the git hooks/post-receive script. x2go pushed a commit to branch master in repository x2goserver. commit 87b97fb18999325c9de328fc9e1c6fe01054694f Author: Mihai Moldovan <ionic@ionic.de> Date: Tue Jun 23 15:49:10 2015 +0200 x2goserver/sbin/x2gocleansessions: don't use gmtime (time ()) but merely time (). The former one returns a formatted date-time string, which can't be checked by forming a difference. The latter one returns an UNIX timestamp, which is what we really want... minus leap seconds. Let's hope this doesn't bite back some time or later... Cherry-picked from release/4.0.1.x branch. --- debian/changelog | 5 +++++ x2goserver/sbin/x2gocleansessions | 6 +++--- 2 files changed, 8 insertions(+), 3 deletions(-) diff --git a/debian/changelog b/debian/changelog index be92575..36b2fa2 100644 --- a/debian/changelog +++ b/debian/changelog @@ -222,6 +222,11 @@ x2goserver (4.0.1.20-0x2go1) UNRELEASED; urgency=low array. Only delete elements once work on these has been finished. - x2goserver/sbin/x2gocleansessions: don't add failed/finished sessions to remembered list if that list already includes them. + - x2goserver/sbin/x2gocleansessions: don't use gmtime (time ()) but merely + time (). The former one returns a formatted date-time string, which + can't be checked by forming a difference. The latter one returns an UNIX + timestamp, which is what we really want... minus leap seconds. Let's + hope this doesn't bite back some time or later... * x2goserver.spec: - Add sudo and logcheck as BuildRequires and Requires. Don't own directories that are owned by sudo and logcheck. Logcheck is not diff --git a/x2goserver/sbin/x2gocleansessions b/x2goserver/sbin/x2gocleansessions index d94d6e2..c072db9 100755 --- a/x2goserver/sbin/x2gocleansessions +++ b/x2goserver/sbin/x2gocleansessions @@ -180,7 +180,7 @@ elsif ($pid == 0 ) # Clean up invalid sessions (i.e., those for which no nxagent process is running anymore) # from the session database, if the status didn't change for more than 10 seconds. - if ((!@sinfo[0]) && (defined ($remembered_sessions_status_since_time{@sinfo[1]})) && ((gmtime (time) - $remembered_sessions_status_since_time{@sinfo[1]}) >= 10)) + if ((!@sinfo[0]) && (defined ($remembered_sessions_status_since_time{@sinfo[1]})) && ((time () - $remembered_sessions_status_since_time{@sinfo[1]}) >= 10)) { dbsys_rmsessionsroot(@sinfo[1]); next; @@ -198,7 +198,7 @@ elsif ($pid == 0 ) # Record the status of either previously unseen or status-changing sessions and the current time. if (!(defined ($remembered_sessions_status_since_time{@sinfo[1]})) || ($remembered_sessions_status{@sinfo[1]} !~ m/@sinfo[4]/)) { $remembered_sessions_status{@sinfo[1]} = @sinfo[4]; - $remembered_sessions_status_since_time{@sinfo[1]} = gmtime (time); + $remembered_sessions_status_since_time{@sinfo[1]} = time (); $remembered_sessions_status_since_iterations{@sinfo[1]} = 0; } else { @@ -219,7 +219,7 @@ elsif ($pid == 0 ) } # Kill the process if blocked for more than 20 seconds. - if ((gmtime (time) - $remembered_sessions_status_since_time{@sinfo[1]}) >= 20) + if ((time () - $remembered_sessions_status_since_time{@sinfo[1]}) >= 20) { log_message ('debug', "@sinfo[1]: blocked for more than 20 seconds."); # send SIGKILL to dangling X-server processes -- Alioth's /srv/git/code.x2go.org/x2goserver.git//..//_hooks_/post-receive-email on /srv/git/code.x2go.org/x2goserver.git
This is an automated email from the git hooks/post-receive script. x2go pushed a commit to branch master in repository x2goserver. commit 4bd8d2473c98a7bd66372eff174b4e04f8c7bd3d Author: Mihai Moldovan <ionic@ionic.de> Date: Tue Jun 23 18:42:18 2015 +0200 x2goserver/sbin/x2gocleansessions: add debugging output to show the state change when updating the cached state result. Cherry-picked from release/4.0.1.x branch. --- debian/changelog | 2 ++ x2goserver/sbin/x2gocleansessions | 1 + 2 files changed, 3 insertions(+) diff --git a/debian/changelog b/debian/changelog index 36b2fa2..30c305d 100644 --- a/debian/changelog +++ b/debian/changelog @@ -227,6 +227,8 @@ x2goserver (4.0.1.20-0x2go1) UNRELEASED; urgency=low can't be checked by forming a difference. The latter one returns an UNIX timestamp, which is what we really want... minus leap seconds. Let's hope this doesn't bite back some time or later... + - x2goserver/sbin/x2gocleansessions: add debugging output to show the + state change when updating the cached state result. * x2goserver.spec: - Add sudo and logcheck as BuildRequires and Requires. Don't own directories that are owned by sudo and logcheck. Logcheck is not diff --git a/x2goserver/sbin/x2gocleansessions b/x2goserver/sbin/x2gocleansessions index c072db9..64db91b 100755 --- a/x2goserver/sbin/x2gocleansessions +++ b/x2goserver/sbin/x2gocleansessions @@ -189,6 +189,7 @@ elsif ($pid == 0 ) # Update current status once per session. Avoids race conditions. my $current_status = system_capture_stdout_output ("$x2go_lib_path/x2gogetstatus", "@sinfo[1]"); if (length ($current_status)) { + log_message ('debug', "@sinfo[1]: updating session status from '@sinfo[4]' to '$current_status'."); @sinfo[4] = $current_status; } else { -- Alioth's /srv/git/code.x2go.org/x2goserver.git//..//_hooks_/post-receive-email on /srv/git/code.x2go.org/x2goserver.git
This is an automated email from the git hooks/post-receive script. x2go pushed a commit to branch master in repository x2goserver. commit 81fb801976ed293208cd0dafb70215c2c2461362 Author: Mihai Moldovan <ionic@ionic.de> Date: Tue Jun 23 18:51:40 2015 +0200 x2goserver/sbin/x2gocleansessions: add timestamp to debug output. --- debian/changelog | 1 + x2goserver/sbin/x2gocleansessions | 3 ++- 2 files changed, 3 insertions(+), 1 deletion(-) diff --git a/debian/changelog b/debian/changelog index 30c305d..3190590 100644 --- a/debian/changelog +++ b/debian/changelog @@ -149,6 +149,7 @@ x2goserver (4.1.0.0-0x2go1.1) UNRELEASED; urgency=low [ Mihai Moldovan ] * New upstream version (4.1.0.0): + - x2goserver/sbin/x2gocleansessions: add timestamp to debug output. * x2goserver.spec: - Only create session DB in x2goserver's post install script. Do use proper Requires(post) statements to make sure perl-X2Go-Server-DB and diff --git a/x2goserver/sbin/x2gocleansessions b/x2goserver/sbin/x2gocleansessions index 64db91b..91dde53 100755 --- a/x2goserver/sbin/x2gocleansessions +++ b/x2goserver/sbin/x2gocleansessions @@ -84,7 +84,8 @@ sub log_message syslog($loglevel, $msg); if ($debug) { - print "$loglevel ::: $msg\n"; + my $logtime = localtime (time ()); + print "$logtime ::: $loglevel ::: $msg\n"; } } -- Alioth's /srv/git/code.x2go.org/x2goserver.git//..//_hooks_/post-receive-email on /srv/git/code.x2go.org/x2goserver.git