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/09/19 22:43:43 UTC
svn commit: r1524832 - /vcl/trunk/managementnode/lib/VCL/utils.pm
Author: arkurth
Date: Thu Sep 19 20:43:42 2013
New Revision: 1524832
URL: http://svn.apache.org/r1524832
Log:
VCL-702
Removed old subroutines from utils.pm which aren't called from anywhere:
_checknstartservice
lockfile
reservations_ready
time_exceeded
is_reservation_deleted
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=1524832&r1=1524831&r2=1524832&view=diff
==============================================================================
--- vcl/trunk/managementnode/lib/VCL/utils.pm (original)
+++ vcl/trunk/managementnode/lib/VCL/utils.pm Thu Sep 19 20:43:42 2013
@@ -81,7 +81,6 @@ require Exporter;
our @ISA = qw(Exporter);
our @EXPORT = qw(
- _checknstartservice
_pingnode
_sshd_status
changelinuxpassword
@@ -170,7 +169,6 @@ our @EXPORT = qw(
kill_child_processes
kill_reservation_process
known_hosts
- lockfile
mail
makedatestring
nmap_port
@@ -185,7 +183,6 @@ our @EXPORT = qw(
read_file_to_array
rename_vcld_process
reservation_being_processed
- reservations_ready
round
run_command
run_scp_command
@@ -206,7 +203,6 @@ our @EXPORT = qw(
string_to_ascii
switch_state
switch_vmhost_id
- time_exceeded
update_blockrequest_processing
update_cluster_info
update_computer_address
@@ -1179,32 +1175,6 @@ sub check_time {
#/////////////////////////////////////////////////////////////////////////////
-=head2 time_exceeded
-
- Parameters : $time_slice, $limit
- Returns : 1(success) or 0(failure)
- Description : preform a difference check,
- if delta of now and input $time_slice
- is less than input $limit return 1(true)
-=cut
-
-sub time_exceeded {
-
- my ($time_slice, $limit) = @_;
- my ($package, $filename, $line, $sub) = caller(0);
- my $now = time();
- my $diff = $now - $time_slice;
- if ($diff > ($limit * 60)) {
- #time exceeded
- return 1;
- }
- else {
- return 0;
- }
-} ## end sub time_exceeded
-
-#/////////////////////////////////////////////////////////////////////////////
-
=head2 mail
Parameters : $to, $subject, $mailstring, $from
@@ -1273,67 +1243,6 @@ sub mail {
#/////////////////////////////////////////////////////////////////////////////
-=head2 _checknstartservice
-
- Parameters : $service name
- Returns : 1 or 0
- Description : checks for running local service attempts to restart
- xCAT specific
-=cut
-
-sub _checknstartservice {
- my $service = $_[0];
- my ($package, $filename, $line, $sub) = caller(0);
- notify($ERRORS{'OK'}, 0, "service not set") if (!defined($service));
- my $status = 0;
- if (open(SERVICE, "/sbin/service $service status |")) {
- while (<SERVICE>) {
- chomp($_);
- #notify($ERRORS{'OK'},0,"_checknstartservice: $_");
- if ($_ =~ /running/) {
- $status = 1;
- notify($ERRORS{'OK'}, 0, "_checknstartservice: $service is running");
- }
- }
- close(SERVICE);
- if ($status == 1) {
- return 1;
- }
- else {
- notify($ERRORS{'OK'}, 0, "_checknstartservice: $service is not running will try to start");
- # try to start service
- if (open(SERVICE, "/sbin/service $service start |")) {
- while (<SERVICE>) {
- chomp($_);
- notify($ERRORS{'WARNING'}, 0, "_checknstartservice: $_");
- if ($_ =~ /started/) {
- $status = 1;
- last;
- }
- }
- close(SERVICE);
- if ($status == 1) {
- return 1;
- }
- else {
- notify($ERRORS{'WARNING'}, 0, "_checknstartservice: $service could not start");
- return 0;
- }
- } ## end if (open(SERVICE, "/sbin/service $service start |"...
- else {
- notify($ERRORS{'WARNING'}, 0, "_checknstartservice: WARNING -- could not run service command for $service start. $! ");
- return 0;
- }
- } ## end else [ if ($status == 1)
- } ## end if (open(SERVICE, "/sbin/service $service status |"...
- else {
- notify($ERRORS{'WARNING'}, 0, "_checknstartservice: WARNING -- could not run service command for $service check. $! ");
- return 0;
- }
-} ## end sub _checknstartservice
-
-#/////////////////////////////////////////////////////////////////////////////
-
=head2 update_preload_fla
Parameters : request id, flag 1,0
@@ -1762,7 +1671,7 @@ sub is_request_deleted {
my $laststate_name = $selected_rows[0]{laststate_name};
#notify($ERRORS{'DEBUG'}, 0,"state=$state_name, laststate=$laststate_name");
-
+
if ($state_name =~ /(deleted|makeproduction)/ || $laststate_name =~ /(deleted|makeproduction)/) {
return 1;
}
@@ -1772,68 +1681,6 @@ sub is_request_deleted {
#/////////////////////////////////////////////////////////////////////////////
-=head2 is_reservation_deleted
-
- Parameters : $reservation_id
- Returns : return 1 if reservation's request state or laststate is set to deleted or if reservation does not exist
- return 0 if reservation exists and neither request state nor laststate is set to deleted: 1 success, 0 failure
- Description : checks if reservation has been deleted
-
-=cut
-
-sub is_reservation_deleted {
- my ($reservation_id) = @_;
-
- # Check the passed parameter
- if (!(defined($reservation_id))) {
- notify($ERRORS{'WARNING'}, 0, "reservation ID was not specified");
- return 0;
- }
-
- # Create the select statement
- my $select_statement = "
- SELECT
- reservation.id AS reservation_id,
- request.stateid AS currentstate_id,
- request.laststateid AS laststate_id,
- currentstate.name AS currentstate_name,
- laststate.name AS laststate_name
- FROM
- reservation, request, state currentstate, state laststate
- WHERE
- reservation.id = $reservation_id
- AND reservation.requestid = request.id
- AND request.stateid = currentstate.id
- AND request.laststateid = laststate.id
- ";
-
- # Call the database select subroutine
- # This will return an array of one or more rows based on the select statement
- my @selected_rows = database_select($select_statement);
-
- # Check to make sure 1 row was returned
- if (scalar @selected_rows == 0) {
- return 1;
- }
- elsif (scalar @selected_rows > 1) {
- notify($ERRORS{'WARNING'}, 0, "" . scalar @selected_rows . " rows were returned from database select");
- return 0;
- }
-
- my $state_name = $selected_rows[0]{currentstate_name};
- my $laststate_name = $selected_rows[0]{laststate_name};
-
- #notify($ERRORS{'DEBUG'}, 0,"state=$state_name, laststate=$laststate_name");
-
- if ($state_name =~ /(deleted|makeproduction)/ || $laststate_name =~ /(deleted|makeproduction)/) {
- return 1;
- }
-
- return 0;
-} ## end sub is_reservation_deleted
-
-#/////////////////////////////////////////////////////////////////////////////
-
=head2 is_request_imaging
Parameters : $request_id
@@ -2607,32 +2454,6 @@ sub notify_via_wall {
#/////////////////////////////////////////////////////////////////////////////
-=head2 lockfile
-
- Parameters : $file
- Returns : 0 failed or 1 success
- Description : creates $file.lock
-
-=cut
-
-sub lockfile {
- my ($file) = $_[0];
- my $lockfile = $file . ".lock";
- while (!(-r $lockfile)) {
- if (open(LOCK, ">$lockfile")) {
- print LOCK "1";
- close LOCK;
- }
- else {
- notify($ERRORS{'WARNING'}, 0, "could not create $lockfile $!");
- return 0;
- }
- return 1;
- } ## end while (!(-r $lockfile))
-} ## end sub lockfile
-
-#/////////////////////////////////////////////////////////////////////////////
-
=head2 notify_via_msg
Parameters : $node, $user, $message
@@ -3048,13 +2869,6 @@ sub insertloadlog {
# Escape any single quotes in additionalinfo
$additionalinfo =~ s/\'/\\\'/g;
- ## Check to make sure the reservation has not been deleted
- ## The INSERT statement will fail if it has been deleted because of the key constraint on reservationid
- #if (is_reservation_deleted($resid)) {
- # notify($ERRORS{'OK'}, 0, "computerloadlog entry not inserted, reservation has been deleted");
- # return 1;
- #}
-
# Assemble the SQL statement
my $insert_loadlog_statement = "
INSERT INTO
@@ -7807,124 +7621,6 @@ sub switch_vmhost_id {
#/////////////////////////////////////////////////////////////////////////////
-=head2 reservations_ready
-
- Parameters : request ID
- Returns : 1 if all reservations are ready, 0 if any are not ready, undefined if any failed
- Description :
-
-=cut
-
-sub reservations_ready {
- my ($request_id) = @_;
-
- # Make sure request ID was passed
- if (!$request_id) {
- notify($ERRORS{'WARNING'}, 0, "request ID argument was not passed");
- return;
- }
-
- my $select_statement = "
- SELECT
- reservation.id AS reservation_id,
- computerloadstate.loadstatename
-
- FROM
- request,
- reservation
-
- LEFT JOIN
- computerloadlog
- ON (
- computerloadlog.reservationid = reservation.id
- )
-
- LEFT JOIN
- computerloadstate
- ON (
- computerloadstate.id = computerloadlog.loadstateid
- )
-
- WHERE
- request.id = $request_id
- AND reservation.requestid = request.id
- ";
-
- # Call the database select subroutine
- # This will return an array of one or more rows based on the select statement
- my @computerloadlog_rows = database_select($select_statement);
-
- # Check to make sure 1 row was returned
- if (scalar @computerloadlog_rows == 0) {
- notify($ERRORS{'WARNING'}, 0, "reservations associated with request $request_id could not be retrieved from the database, 0 rows were returned");
- return;
- }
-
- my %reservation_status;
-
- # Loop through the rows, check the loadstate
- for my $computerloadlog_row (@computerloadlog_rows) {
- my $reservation_id = $computerloadlog_row->{reservation_id};
- my $computerloadstate_name = $computerloadlog_row->{loadstatename};
-
- # Initialize the hash key for the reservation if it isn't defined
- if (!defined($reservation_status{$reservation_id})) {
- $reservation_status{$reservation_id} = 'not ready';
- }
-
- # Skip if loadstatename is undefined, means no computerloadlog rows exist for the reservation
- if (!defined($computerloadstate_name)) {
- next;
- }
-
- # Only populate hash keys with loadstatnames we care about
- # Ignore 'info' and other entries
- if ($computerloadstate_name =~ /loadimagecomplete|nodeready|failed/i) {
-
- # Update the reservation hash key, don't overwrite 'failed'
- if ($reservation_status{$reservation_id} !~ /failed/) {
- $reservation_status{$reservation_id} = $computerloadstate_name;
- }
- }
- } ## end for my $computerloadlog_row (@computerloadlog_rows)
-
- # Assemble a string of all of the statuses
- my $status_string = '';
- my $failed = 0;
- my $ready = 1;
- foreach my $reservation_check_id (sort keys(%reservation_status)) {
- my $reservation_check_status = $reservation_status{$reservation_check_id};
- $status_string .= "reservation $request_id:$reservation_check_id: $reservation_check_status\n";
-
- # Set the failed flag to 1 if any reservations failed
- if ($reservation_check_status =~ /failed/i) {
- $failed = 1;
- }
-
- # Set the ready flag to 0 if any reservations are set to 0 (matching state wasn't found)
- if ($reservation_check_status =~ /not ready/) {
- $ready = 0;
- }
- } ## end foreach my $reservation_check_id (sort keys(%reservation_status...
-
- if ($failed) {
- notify($ERRORS{'WARNING'}, 0, "request $request_id has failed reservations, returning undefined:\n$status_string");
- return;
- }
-
- if ($ready) {
- notify($ERRORS{'OK'}, 0, "all reservations for request $request_id are ready, returning $ready:\n$status_string");
- }
- else {
- notify($ERRORS{'OK'}, 0, "not all reservations for request $request_id are ready, returning $ready:\n$status_string");
- }
-
- return $ready;
-
-} ## end sub reservations_ready
-
-#/////////////////////////////////////////////////////////////////////////////
-
=head2 get_request_loadstate_names
Parameters : $request_id