[LON-CAPA-cvs] cvs: loncom(version_1_2_X) / loncnew
albertel
lon-capa-cvs@mail.lon-capa.org
Wed, 19 Jan 2005 21:38:26 -0000
albertel Wed Jan 19 16:38:26 2005 EDT
Modified files: (Branch: version_1_2_X)
/loncom loncnew
Log:
- backport sleep removal, and uppdatestatus fixes 1.66 1.67
Index: loncom/loncnew
diff -u loncom/loncnew:1.57 loncom/loncnew:1.57.2.1
--- loncom/loncnew:1.57 Wed Sep 22 06:22:50 2004
+++ loncom/loncnew Wed Jan 19 16:38:25 2005
@@ -2,7 +2,7 @@
# The LearningOnline Network with CAPA
# lonc maintains the connections to remote computers
#
-# $Id: loncnew,v 1.57 2004/09/22 10:22:50 foxr Exp $
+# $Id: loncnew,v 1.57.2.1 2005/01/19 21:38:25 albertel Exp $
#
# Copyright Michigan State University Board of Trustees
#
@@ -61,6 +61,7 @@
use LONCAPA::LondTransaction;
use LONCAPA::Configuration;
use LONCAPA::HashIterator;
+use Fcntl qw(:flock);
# Read the httpd configuration file to get perl variables
@@ -383,6 +384,7 @@
$KeyMode = "";
$clock_watcher->cancel();
}
+ &UpdateStatus();
}
=pod
@@ -1488,25 +1490,29 @@
Debug(2, "Reporting child status because : ".$watcher->data);
my $docdir = $perlvar{'lonDocRoot'};
- my $fh = IO::File->new(">>$docdir/lon-status/loncstatus.txt");
- print $fh $$."\t".$RemoteHost."\t".$Status."\t".
+
+ open(LOG,">>$docdir/lon-status/loncstatus.txt");
+ flock(LOG,LOCK_EX);
+ print LOG $$."\t".$RemoteHost."\t".$Status."\t".
$RecentLogEntry."\n";
#
# Write out information about each of the connections:
#
if ($DebugLevel > 2) {
- print $fh "Active connection statuses: \n";
+ print LOG "Active connection statuses: \n";
my $i = 1;
print STDERR "================================= Socket Status Dump:\n";
foreach my $item (keys %ActiveConnections) {
my $Socket = $ActiveConnections{$item}->data;
my $state = $Socket->GetState();
- print $fh "Connection $i State: $state\n";
+ print LOG "Connection $i State: $state\n";
print STDERR "---------------------- Connection $i \n";
$Socket->Dump(-1); # Ensure it gets dumped..
$i++;
}
}
+ flock(LOG,LOCK_UN);
+ close(LOG);
$ConnectionRetriesLeft = $ConnectionRetries;
}
@@ -1729,7 +1735,6 @@
foreach my $pid (keys %ChildHash) {
Debug(2, "Sending USR1 -> $pid");
kill 'USR1' => $pid; # Tell Child to report status.
- sleep 1; # Wait so file doesn't intermix.
}
}