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 2011/08/18 23:44:38 UTC
svn commit: r1159427 - /incubator/vcl/trunk/managementnode/lib/VCL/utils.pm
Author: arkurth
Date: Thu Aug 18 21:44:38 2011
New Revision: 1159427
URL: http://svn.apache.org/viewvc?rev=1159427&view=rev
Log:
VCL-428
Fixed problem in utils.pm::get_management_node_info. It was returning the cached into for the management node it was running on if an argument was passed indicating the info for some other management node was requested.
Modified:
incubator/vcl/trunk/managementnode/lib/VCL/utils.pm
Modified: incubator/vcl/trunk/managementnode/lib/VCL/utils.pm
URL: http://svn.apache.org/viewvc/incubator/vcl/trunk/managementnode/lib/VCL/utils.pm?rev=1159427&r1=1159426&r2=1159427&view=diff
==============================================================================
--- incubator/vcl/trunk/managementnode/lib/VCL/utils.pm (original)
+++ incubator/vcl/trunk/managementnode/lib/VCL/utils.pm Thu Aug 18 21:44:38 2011
@@ -6018,24 +6018,31 @@ sub get_management_predictive_info {
=cut
sub get_management_node_info {
+ # Get the management node identifier argument
+ # If argument was not passed, assume management node is this machine
+ my $management_node_identifier = shift;
+
# Get the hostname of the computer this is running on
my $hostname = (hostname())[0];
+
+ if (!$management_node_identifier) {
+ $management_node_identifier = $hostname;
+
+ if (defined($ENV{management_node_info}) && ref($ENV{management_node_info}) eq 'HASH') {
+ my $lastcheckin_age = (time - convert_to_epoch_seconds($ENV{management_node_info}{lastcheckin}));
+
+ if ($lastcheckin_age < 60) {
+ return $ENV{management_node_info};
+ }
+ }
+ }
- # Get the management node identifier argument
- # If argument was not passed, assume management node is this machine
- my $management_node_identifier = shift || $hostname;
if (!$management_node_identifier) {
notify($ERRORS{'WARNING'}, 0, "management node hostname or ID was not specified and hostname could not be determined");
return;
}
- if (defined($ENV{management_node_info}) && ref($ENV{management_node_info}) eq 'HASH') {
- my $lastcheckin_age = (time - convert_to_epoch_seconds($ENV{management_node_info}{lastcheckin}));
-
- if ($lastcheckin_age < 60) {
- return $ENV{management_node_info};
- }
- }
+ notify($ERRORS{'DEBUG'}, 0, "attempting to retrieve management node info: '$management_node_identifier'");
my $select_statement = "
SELECT
@@ -6122,10 +6129,10 @@ AND resource.id = resourcegroupmembers.r
AND resource.subid = managementnode.id
AND managementnode.id != $management_node_id
";
-
+
# Call the database select subroutine
my @imagelib_rows = database_select($imagelib_statement);
-
+
# Check to make sure 1 row was returned
if (scalar @imagelib_rows == 0) {
notify($ERRORS{'WARNING'}, 0, "zero rows were returned from database select, image library functions will be disabled");