You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@vcl.apache.org by ar...@apache.org on 2013/03/06 20:26:28 UTC
svn commit: r1453500 - /vcl/trunk/managementnode/lib/VCL/utils.pm
Author: arkurth
Date: Wed Mar 6 19:26:28 2013
New Revision: 1453500
URL: http://svn.apache.org/r1453500
Log:
VCL-16
Added cache timestamp check to get_user_info.
Modified:
vcl/trunk/managementnode/lib/VCL/utils.pm
Modified: vcl/trunk/managementnode/lib/VCL/utils.pm
URL: http://svn.apache.org/viewvc/vcl/trunk/managementnode/lib/VCL/utils.pm?rev=1453500&r1=1453499&r2=1453500&view=diff
==============================================================================
--- vcl/trunk/managementnode/lib/VCL/utils.pm (original)
+++ vcl/trunk/managementnode/lib/VCL/utils.pm Wed Mar 6 19:26:28 2013
@@ -7302,9 +7302,16 @@ sub get_user_info {
return;
}
- if (!$no_cache && $ENV{user_info}{$user_identifier}) {
- notify($ERRORS{'DEBUG'}, 0, "returning cached user info: $user_identifier");
- return $ENV{user_info}{$user_identifier};
+ # Check if cached user info exists
+ if (!$no_cache && defined($ENV{user_info}{$user_identifier})) {
+ # Check the time the info was last retrieved
+ my $data_age_seconds = (time - $ENV{user_info}{$user_identifier}{RETRIEVAL_TIME});
+ if ($data_age_seconds < 600) {
+ return $ENV{user_info}{$user_identifier};
+ }
+ else {
+ notify($ERRORS{'DEBUG'}, 0, "retrieving current user info for '$user_identifier' from database, cached data is stale: $data_age_seconds seconds old");
+ }
}
notify($ERRORS{'DEBUG'}, 0, "retrieving user info: $user_identifier");