[Cluster-devel] cluster/fence/agents/egenera fence_egenera.pl
jparsons at sourceware.org
jparsons at sourceware.org
Wed Aug 8 16:02:10 UTC 2007
CVSROOT: /cvs/cluster
Module name: cluster
Branch: RHEL51
Changes by: jparsons at sourceware.org 2007-08-08 16:02:10
Modified files:
fence/agents/egenera: fence_egenera.pl
Log message:
Fix for 251358
Patches:
http://sourceware.org/cgi-bin/cvsweb.cgi/cluster/fence/agents/egenera/fence_egenera.pl.diff?cvsroot=cluster&only_with_tag=RHEL51&r1=1.2.2.1&r2=1.2.2.1.2.1
--- cluster/fence/agents/egenera/fence_egenera.pl 2007/06/27 15:38:17 1.2.2.1
+++ cluster/fence/agents/egenera/fence_egenera.pl 2007/08/08 16:02:10 1.2.2.1.2.1
@@ -4,7 +4,7 @@
###############################################################################
##
## Copyright (C) Sistina Software, Inc. 1997-2003 All rights reserved.
-## Copyright (C) 2004-2007 Red Hat, Inc. All rights reserved.
+## Copyright (C) 2004 Red Hat, Inc. All rights reserved.
##
## This copyrighted material is made available to anyone wishing to use,
## modify, copy, or redistribute it subject to the terms and conditions
@@ -20,13 +20,14 @@
# "#END_VERSION_GENERATION" It is generated by the Makefile
#BEGIN_VERSION_GENERATION
-$FENCE_RELEASE_NAME="";
-$REDHAT_COPYRIGHT="";
-$BUILD_DATE="";
+$FENCE_RELEASE_NAME="1.32.25";
+$REDHAT_COPYRIGHT=("Copyright (C) Red Hat, Inc. 2004 All rights reserved.");
+$BUILD_DATE="(built Wed May 17 11:59:44 EDT 2006)";
#END_VERSION_GENERATION
# Get the program name from $0 and strip directory names
$_=$0;
+$|=1;
s/.*\///;
my $pname = $_;
@@ -163,6 +164,10 @@
# FIXME should we do more error checking?
# Excess name/vals will be eaten for now
+ else
+ {
+ fail "parse error: unknown option \"$opt\"";
+ }
}
}
@@ -269,7 +274,7 @@
}
# Is there any harm in sending this command multiple times?
- my $cmd = "ssh $cserv $esh blade -b $_";
+ my $cmd = "ssh $cserv $esh pserver -b $lpan/$pserv";
my $pid = open3 (\*WTR, \*RDR,\*RDR, $cmd)
or die "error open3(): $!";
@@ -291,11 +296,15 @@
sub pserver_shutdown
{
my $rtrn=1;
+ local *egen_log;
+ open(egen_log,">/tmp/eglog");
for (my $trys=0; $trys<20; $trys++)
{
last if (pserver_status != 0);
+
my $status = $_;
+ print egen_log "shutdown: $trys $status\n";
if (/^Shutdown/)
{
$rtrn=0;
@@ -307,6 +316,12 @@
# do I need to do anything here?
# We'll just wait for now
}
+ elsif (/^Booted\(KDB\)/ || /^Debugging/ )
+ {
+ print egen_log "shutdown: crash dump being performed. Waiting\n";
+ $rtrn=0;
+ last;
+ }
else
{
if (pserver_pblade)
@@ -317,8 +332,12 @@
# is there any harm in sending this command multiple
# times?
my $cmd = "ssh $cserv $esh blade -s $_";
+ print egen_log "shutdown: $cmd being called, before open3\n";
my $pid = open3 (\*WTR, \*RDR,\*RDR, $cmd)
or die "error open3(): $!";
+ print egen_log "shutdown: after calling open3\n";
+ @outlines = <RDR>;
+ print egen_log "shutdown: Open3 result: ", @outlines, "\n";
close WTR;
close RDR;
@@ -329,6 +348,7 @@
sleep 1;
}
+ print egen_log "shutdown: Returning from pserver_shutdown with return code $rtrn\n";
return $rtrn;
}
More information about the Cluster-devel
mailing list