[LON-CAPA-cvs] cvs: loncom /lonnet/perl lonnet.pm
raeburn
raeburn at source.lon-capa.org
Wed Apr 20 20:36:17 EDT 2016
raeburn Thu Apr 21 00:36:17 2016 EDT
Modified files:
/loncom/lonnet/perl lonnet.pm
Log:
- Cache load-balancer status for unconfigured domains.
Index: loncom/lonnet/perl/lonnet.pm
diff -u loncom/lonnet/perl/lonnet.pm:1.1306 loncom/lonnet/perl/lonnet.pm:1.1307
--- loncom/lonnet/perl/lonnet.pm:1.1306 Fri Apr 15 18:53:38 2016
+++ loncom/lonnet/perl/lonnet.pm Thu Apr 21 00:36:17 2016
@@ -1,7 +1,7 @@
# The LearningOnline Network
# TCP networking package
#
-# $Id: lonnet.pm,v 1.1306 2016/04/15 18:53:38 raeburn Exp $
+# $Id: lonnet.pm,v 1.1307 2016/04/21 00:36:17 raeburn Exp $
#
# Copyright Michigan State University Board of Trustees
#
@@ -1288,7 +1288,7 @@
my $uintdom = &Apache::lonnet::internet_dom($uprimary_id);
my $intdom = &Apache::lonnet::internet_dom($lonhost);
my $serverhomedom = &host_domain($lonhost);
-
+ my $domneedscache;
my $cachetime = 60*60*24;
if (($uintdom ne '') && ($uintdom eq $intdom)) {
@@ -1303,6 +1303,8 @@
&Apache::lonnet::get_dom('configuration',['loadbalancing'],$dom_in_use);
if (ref($domconfig{'loadbalancing'}) eq 'HASH') {
$result = &do_cache_new('loadbalancing',$dom_in_use,$domconfig{'loadbalancing'},$cachetime);
+ } else {
+ $domneedscache = $dom_in_use;
}
}
if (ref($result) eq 'HASH') {
@@ -1361,7 +1363,9 @@
my %domconfig =
&Apache::lonnet::get_dom('configuration',['loadbalancing'],$serverhomedom);
if (ref($domconfig{'loadbalancing'}) eq 'HASH') {
- $result = &do_cache_new('loadbalancing',$dom_in_use,$domconfig{'loadbalancing'},$cachetime);
+ $result = &do_cache_new('loadbalancing',$serverhomedom,$domconfig{'loadbalancing'},$cachetime);
+ } else {
+ $domneedscache = $serverhomedom;
}
}
if (ref($result) eq 'HASH') {
@@ -1381,12 +1385,21 @@
$is_balancer = 1;
$offloadto = &this_host_spares($dom_in_use);
}
+ unless (defined($cached)) {
+ $domneedscache = $serverhomedom;
+ }
}
} else {
if ($perlvar{'lonBalancer'} eq 'yes') {
$is_balancer = 1;
$offloadto = &this_host_spares($dom_in_use);
}
+ unless (defined($cached)) {
+ $domneedscache = $serverhomedom;
+ }
+ }
+ if ($domneedscache) {
+ &do_cache_new('loadbalancing',$domneedscache,$is_balancer,$cachetime);
}
if ($is_balancer) {
my $lowest_load = 30000;
More information about the LON-CAPA-cvs
mailing list