Improving the cleanup_database.pl script in two aspects:
1) In some cases CGI::Session seems to place quotes around the atime and ctime
data in the a_session field. Two regexps now take this into account.
2) If the --sessdays parameter is used, the --sessions parameter is now
implicitly enabled too.
With thanks to Ian Bays and Tom Hanstra.
---
misc/cronjobs/cleanup_database.pl | 7 ++++---
1 files changed, 4 insertions(+), 3 deletions(-)
diff --git a/misc/cronjobs/cleanup_database.pl
b/misc/cronjobs/cleanup_database.pl
index 1333111..ba2a6d8 100755
--- a/misc/cronjobs/cleanup_database.pl
+++ b/misc/cronjobs/cleanup_database.pl
@@ -44,7 +44,7 @@ Usage: $0 [-h|--help] [--sessions] [--sessdays DAYS]
[-v|--verbose] [--zebraqueu
other options
--sessions purge the sessions table. If you use this while users
are logged into Koha, they will have to reconnect.
- --sessdays DAYS purge only sessions older than DAYS days (use together
with sessions parameter).
+ --sessdays DAYS purge only sessions older than DAYS days.
-v --verbose will cause the script to give you a bit more information
about the run.
--zebraqueue DAYS purge completed entries from the zebraqueue from
@@ -64,6 +64,7 @@ GetOptions(
'm|mail' => \$mail,
'zebraqueue:i' => \$zebraqueue_days,
) || usage(1);
+$sessions=1 if $sess_days && $sess_days>0;
if ($help) {
usage(0);
@@ -148,9 +149,9 @@ sub RemoveOldSessions {
while ( $sth->fetch ) {
$lasttime = 0;
- if ( $a_session =~ /lasttime:\s+(\d+)/ ) {
+ if ( $a_session =~ /lasttime:\s+'?(\d+)/ ) {
$lasttime = $1;
- } elsif ( $a_session =~ /(ATIME|CTIME):\s+(\d+)/ ) {
+ } elsif ( $a_session =~ /(ATIME|CTIME):\s+'?(\d+)/ ) {
$lasttime = $2;
}
if ( $lasttime && $lasttime < $limit ) {
--
1.6.0.6
_______________________________________________
Koha-patches mailing list
[email protected]
http://lists.koha-community.org/cgi-bin/mailman/listinfo/koha-patches
website : http://www.koha-community.org/
git : http://git.koha-community.org/
bugs : http://bugs.koha-community.org/