Diff for /loncom/loncron between versions 1.5 and 1.10

version 1.5, 2000/06/27 19:21:22 version 1.10, 2000/12/08 23:17:26
Line 204  print $fh "</pre>"; Line 204  print $fh "</pre>";
   
 # ------------------------------------------------------------------------ lonsql  # ------------------------------------------------------------------------ lonsql
   
 if ($perlvar{'lonRole'} eq "library") {  if ($perlvar{'lonRole'} eq "library" && 1==0) {
   
     print $fh '<hr><a name="lond"><h2>lonsql</h2><h3>Log</h3><pre>';      print $fh '<hr><a name="lond"><h2>lonsql</h2><h3>Log</h3><pre>';
           
Line 303  print $fh "</pre>"; Line 303  print $fh "</pre>";
   
 my $londfile="$perlvar{'lonDaemons'}/logs/lond.pid";  my $londfile="$perlvar{'lonDaemons'}/logs/lond.pid";
   
 if (-e $londfile) {  my $restartflag=1;
   if (-e $londfile) {    
    my $lfh=IO::File->new("$londfile");     my $lfh=IO::File->new("$londfile");
    my $londpid=<$lfh>;     my $londpid=<$lfh>;
    chomp($londpid);     chomp($londpid);
    if (kill 0 => $londpid) {     if (kill 0 => $londpid) {
       print $fh "<h3>lond at pid $londpid responding</h3>";        print $fh "<h3>lond at pid $londpid responding</h3>";
         $restartflag=0;
    } else {     } else {
       $errors++; $errors++;        $errors++;
       print $fh "<h3>lond at pid $londpid not responding</h3>";        print $fh "<h3>lond at pid $londpid not responding</h3>";
         # Intelligently handle this.
         # Possibility #1: there is no process
         # Solution: remove .pid file and restart
         if (getpgrp($londpid)==-1) {
     unlink($londfile);
     $restartflag=1;
         }
         else {
         # Possibility #2: there is a live process that is not responding
         #                 for an unknown reason
         # Solution: kill parent and children processes, remove .pid and restart
     `killall -9 lond`;
     unlink($londfile);
     $restartflag=1;
         }
         print $fh 
     "<h3>Deciding to clean up stale .pid file and restart lond</h3>";
    }     }
 } else {  } 
   if ($restartflag==1) {
    $errors++;     $errors++;
    print $fh "<h3>lond not running, trying to start</h3>";     print $fh "<h3>lond not running, trying to start</h3>";
    system("$perlvar{'lonDaemons'}/lond");     system("$perlvar{'lonDaemons'}/lond");
Line 383  print $fh "</pre>"; Line 403  print $fh "</pre>";
   
 my $loncfile="$perlvar{'lonDaemons'}/logs/lonc.pid";  my $loncfile="$perlvar{'lonDaemons'}/logs/lonc.pid";
   
   $restartflag=1;
 if (-e $loncfile) {  if (-e $loncfile) {
    my $lfh=IO::File->new("$loncfile");     my $lfh=IO::File->new("$loncfile");
    my $loncpid=<$lfh>;     my $loncpid=<$lfh>;
Line 390  if (-e $loncfile) { Line 411  if (-e $loncfile) {
    if (kill 0 => $loncpid) {     if (kill 0 => $loncpid) {
       print $fh "<h3>lonc at pid $loncpid responding, sending USR1</h3>";        print $fh "<h3>lonc at pid $loncpid responding, sending USR1</h3>";
       kill USR1 => $loncpid;        kill USR1 => $loncpid;
         $restartflag=0;
    } else {     } else {
       $errors++; $errors++;        $errors++;
       print $fh "<h3>lonc at pid $loncpid not responding</h3>";        print $fh "<h3>lonc at pid $loncpid not responding</h3>";
         # Intelligently handle this.
         # Possibility #1: there is no process
         # Solution: remove .pid file and restart
         if (getpgrp($loncpid)==-1) {
     unlink($loncfile);
     $restartflag=1;
         }
         else {
         # Possibility #2: there is a live process that is not responding
         #                 for an unknown reason
         # Solution: kill parent and children processes, remove .pid and restart
     `killall -9 lonc`;
     unlink($loncfile);
     $restartflag=1;
         }
         print $fh 
     "<h3>Deciding to clean up stale .pid file and restart lonc</h3>";
    }     }
 } else {  } 
   if ($restartflag==1) {
    $errors++;     $errors++;
    print $fh "<h3>lonc not running, trying to start</h3>";     print $fh "<h3>lonc not running, trying to start</h3>";
    system("$perlvar{'lonDaemons'}/lonc");     system("$perlvar{'lonDaemons'}/lonc");

Removed from v.1.5  
changed lines
  Added in v.1.10


FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>