All new accounts created on Gitlab now require administrator approval. If you invite any collaborators, please let Flux staff know so they can approve the accounts.

Commit 84f2b79a authored by Leigh B. Stoller's avatar Leigh B. Stoller

Must always check return value from DBQueryWarn for a null value

before using it!
parent f5b69486
......@@ -118,14 +118,22 @@ while (1) {
$query_result =
DBQueryWarn("select node_id from reserved where pid='$RELOADPID' " .
"and eid='$RELOADEID' and " .
"(CURRENT_TIMESTAMP - INTERVAL $retry_time MINUTE) > rsrv_time");
"(CURRENT_TIMESTAMP - INTERVAL $retry_time MINUTE) ".
" > rsrv_time");
if (! $query_result) {
print "DB Error. Waiting a bit.\n";
next;
}
while (($node) = $query_result->fetchrow){
if (!$retried{$node}) {
print "\nReload appears wedged at ".`date`.
"Power cycling and trying once more!\n";
if (system("$reboot -f $node")) {
fatal("$node was wedged, but could not be power cycled.\n");
}
print "\nReload appears wedged at ".`date`.
"Power cycling and trying once more!\n";
}
$retried{$node} = $time;
}
......@@ -140,7 +148,6 @@ while (1) {
}
}
#
# Next, we do the same thing for nodes in the reloading experiment for
# longer than $warn_time, and warn the admins.
......@@ -148,7 +155,14 @@ while (1) {
$query_result =
DBQueryWarn("select node_id from reserved where pid='$RELOADPID' " .
"and eid='$RELOADEID' and " .
"(CURRENT_TIMESTAMP - INTERVAL $warn_time MINUTE) > rsrv_time");
"(CURRENT_TIMESTAMP - INTERVAL $warn_time MINUTE) > ".
" rsrv_time");
if (! $query_result) {
print "DB Error. Waiting a bit.\n";
next;
}
while (($node) = $query_result->fetchrow){
if (!$warned{$node}) {
notify("Node $node has been in $RELOADPID/$RELOADEID for " .
......@@ -186,7 +200,7 @@ while (1) {
"order by a.node_id");
if (! $query_result) {
print "DB Error getting free nodes. Waiting a bit.\n";
print "DB Error. Waiting a bit.\n";
next;
}
$count = $query_result->numrows;
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment