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 2009/09/14 20:21:30 UTC

svn commit: r814767 - /incubator/vcl/trunk/managementnode/lib/VCL/Module/OS/Windows.pm

Author: arkurth
Date: Mon Sep 14 18:21:29 2009
New Revision: 814767

URL: http://svn.apache.org/viewvc?rev=814767&view=rev
Log:
VCL-226
Added check for "computer is processing another action" error in Windows.pm::reboot(). If this error occurs a power reset is issued.

Modified:
    incubator/vcl/trunk/managementnode/lib/VCL/Module/OS/Windows.pm

Modified: incubator/vcl/trunk/managementnode/lib/VCL/Module/OS/Windows.pm
URL: http://svn.apache.org/viewvc/incubator/vcl/trunk/managementnode/lib/VCL/Module/OS/Windows.pm?rev=814767&r1=814766&r2=814767&view=diff
==============================================================================
--- incubator/vcl/trunk/managementnode/lib/VCL/Module/OS/Windows.pm (original)
+++ incubator/vcl/trunk/managementnode/lib/VCL/Module/OS/Windows.pm Mon Sep 14 18:21:29 2009
@@ -2630,6 +2630,20 @@
 		if (defined($shutdown_exit_status) && $shutdown_exit_status == 0) {
 			notify($ERRORS{'OK'}, 0, "executed reboot command on $computer_node_name");
 		}
+		elsif (defined($shutdown_output) && grep(/processing another action/, @$shutdown_output)) {
+			# The following message may be displayed causing the reboot to fail:
+			# The computer is processing another action and thus cannot be shut down. Wait until the computer has finished its action, and then try again.(21) 
+			notify($ERRORS{'WARNING'}, 0, "unable to reboot because of processing another action error on $computer_node_name, computer will be forcefully restarted, exit status: $shutdown_exit_status, output:\n@{$shutdown_output}");
+			
+			# Call provisioning module's power_reset() subroutine
+			if ($self->provisioner->power_reset()) {
+				notify($ERRORS{'OK'}, 0, "initiated power reset on $computer_node_name");
+			}
+			else {
+				notify($ERRORS{'WARNING'}, 0, "reboot failed, failed to initiate power reset on $computer_node_name");
+				return 0;
+			}
+		}
 		elsif (defined($shutdown_exit_status)) {
 			notify($ERRORS{'WARNING'}, 0, "failed to execute reboot command on $computer_node_name, exit status: $shutdown_exit_status, output:\n@{$shutdown_output}");
 			return 0;