[LON-CAPA-cvs] cvs: loncom / loncnew

albertel lon-capa-cvs@mail.lon-capa.org
Thu, 11 Dec 2003 23:18:37 -0000


albertel		Thu Dec 11 18:18:37 2003 EDT

  Modified files:              
    /loncom	loncnew 
  Log:
  - connections could get frozen in the connectiong state if the remote end accepted the connection but never got back to us on any of our commands BUG#2488
  
  
Index: loncom/loncnew
diff -u loncom/loncnew:1.33 loncom/loncnew:1.34
--- loncom/loncnew:1.33	Tue Nov 25 05:14:40 2003
+++ loncom/loncnew	Thu Dec 11 18:18:37 2003
@@ -2,7 +2,7 @@
 # The LearningOnline Network with CAPA
 # lonc maintains the connections to remote computers
 #
-# $Id: loncnew,v 1.33 2003/11/25 10:14:40 foxr Exp $
+# $Id: loncnew,v 1.34 2003/12/11 23:18:37 albertel Exp $
 #
 # Copyright Michigan State University Board of Trustees
 #
@@ -304,6 +304,14 @@
     foreach my $item (keys %ActiveTransactions) {
 	my $Socket = $ActiveTransactions{$item}->getServer();
 	$Socket->Tick();
+    }
+    foreach my $item (keys %ActiveConnections) {
+	my $State = $ActiveConnections{$item}->data->GetState();
+	if ($State ne 'Idle' && $State ne 'SendingRequest' &&
+	    $State ne 'ReceivingReply') {
+	    Debug(5,"Ticking Socket $State $item");
+	    $ActiveConnections{$item}->data->Tick();
+	}
     }
     # Do we have work in the queue, but no connections to service them?
     # If so, try to make some new connections to get things going again.