From f48666b813fba3eec07babefd95475c9f9368109 Mon Sep 17 00:00:00 2001 From: "Leigh B. Stoller" Date: Wed, 17 Aug 2005 18:21:36 +0000 Subject: [PATCH] Ditto last revision for project_stats and group_stats. --- db/libdb.pm.in | 9 ++++++++- sql/database-create.sql | 2 ++ sql/database-migrate.txt | 25 ++++++++++++++++++++++++- 3 files changed, 34 insertions(+), 2 deletions(-) diff --git a/db/libdb.pm.in b/db/libdb.pm.in index 13069650d..6df5e8e2e 100644 --- a/db/libdb.pm.in +++ b/db/libdb.pm.in @@ -4711,7 +4711,14 @@ sub GatherSwapStats($$$$$;$) " action, exitcode) ". "values (0, '$uid', $starttime, now(), $exptidx, $rsrcidx, ". " '$mode', $ecode)"); - DBQueryWarn("update user_stats set last_activity=now() where uid='$uid'"); + + # We do these here since even failed operations implies activity + DBQueryWarn("update user_stats set last_activity=now() ". + "where uid='$uid'"); + DBQueryWarn("update project_stats set last_activity=now() ". + "where pid='$pid'"); + DBQueryWarn("update group_stats set last_activity=now() ". + "where pid='$pid' and gid='$gid'"); } # diff --git a/sql/database-create.sql b/sql/database-create.sql index a887e7e6d..5aa31d73b 100644 --- a/sql/database-create.sql +++ b/sql/database-create.sql @@ -550,6 +550,7 @@ CREATE TABLE group_stats ( exptswapout_last datetime default NULL, exptswapmod_count int(11) unsigned default '0', exptswapmod_last datetime default NULL, + last_activity datetime default NULL, allexpt_duration int(11) unsigned default '0', allexpt_vnodes int(11) unsigned default '0', allexpt_vnode_duration int(11) unsigned default '0', @@ -1468,6 +1469,7 @@ CREATE TABLE project_stats ( exptswapout_last datetime default NULL, exptswapmod_count int(11) unsigned default '0', exptswapmod_last datetime default NULL, + last_activity datetime default NULL, allexpt_duration int(11) unsigned default '0', allexpt_vnodes int(11) unsigned default '0', allexpt_vnode_duration int(11) unsigned default '0', diff --git a/sql/database-migrate.txt b/sql/database-migrate.txt index 8f1b7ded3..bae69351d 100644 --- a/sql/database-migrate.txt +++ b/sql/database-migrate.txt @@ -2742,4 +2742,27 @@ last_net_act,last_cpu_act,last_ext_act); UNIX_TIMESTAMP(exptswapout_last), UNIX_TIMESTAMP(exptswapmod_last))); -4.4: +4.4: Ditto last revision for project_stats and group_stats + + alter table project_stats add last_activity datetime \ + default NULL after exptswapmod_last; + alter table group_stats add last_activity datetime \ + default NULL after exptswapmod_last; + + To seed these: + + update group_stats set last_activity = + FROM_UNIXTIME(GREATEST(UNIX_TIMESTAMP(exptstart_last), + UNIX_TIMESTAMP(exptpreload_last), + UNIX_TIMESTAMP(exptswapin_last), + UNIX_TIMESTAMP(exptswapout_last), + UNIX_TIMESTAMP(exptswapmod_last))); + + update project_stats set last_activity = + FROM_UNIXTIME(GREATEST(UNIX_TIMESTAMP(exptstart_last), + UNIX_TIMESTAMP(exptpreload_last), + UNIX_TIMESTAMP(exptswapin_last), + UNIX_TIMESTAMP(exptswapout_last), + UNIX_TIMESTAMP(exptswapmod_last))); + +4.5: -- GitLab