--- loncom/lonnet/perl/lonnet.pm 2005/10/27 19:47:39 1.669 +++ loncom/lonnet/perl/lonnet.pm 2005/10/28 21:51:50 1.670 @@ -1,7 +1,7 @@ # The LearningOnline Network # TCP networking package # -# $Id: lonnet.pm,v 1.669 2005/10/27 19:47:39 raeburn Exp $ +# $Id: lonnet.pm,v 1.670 2005/10/28 21:51:50 albertel Exp $ # # Copyright Michigan State University Board of Trustees # @@ -443,15 +443,15 @@ sub overloaderror { # ------------------------------ Find server with least workload from spare.tab sub spareserver { - my ($loadpercent,$userloadpercent) = @_; + my ($loadpercent,$userloadpercent,$want_server_name) = @_; my $tryserver; my $spareserver=''; if ($userloadpercent !~ /\d/) { $userloadpercent=0; } my $lowestserver=$loadpercent > $userloadpercent? $loadpercent : $userloadpercent; - foreach $tryserver (keys %spareid) { - my $loadans=reply('load',$tryserver); - my $userloadans=reply('userload',$tryserver); + foreach $tryserver (keys(%spareid)) { + my $loadans=&reply('load',$tryserver); + my $userloadans=&reply('userload',$tryserver); if ($loadans !~ /\d/ && $userloadans !~ /\d/) { next; #didn't get a number from the server } @@ -468,7 +468,11 @@ sub spareserver { $answer = $userloadans; } if (($answer =~ /\d/) && ($answer<$lowestserver)) { - $spareserver="http://$hostname{$tryserver}"; + if ($want_server_name) { + $spareserver=$tryserver; + } else { + $spareserver="http://$hostname{$tryserver}"; + } $lowestserver=$answer; } } @@ -3113,6 +3117,8 @@ sub allowed { $thisallowed='F'; } } + } else { + $thisallowed=''; } }