--- loncom/loncnew 2003/12/11 23:18:37 1.34 +++ loncom/loncnew 2003/12/16 16:12:19 1.37 @@ -2,7 +2,7 @@ # The LearningOnline Network with CAPA # lonc maintains the connections to remote computers # -# $Id: loncnew,v 1.34 2003/12/11 23:18:37 albertel Exp $ +# $Id: loncnew,v 1.37 2003/12/16 16:12:19 albertel Exp $ # # Copyright Michigan State University Board of Trustees # @@ -210,7 +210,6 @@ sub GetPeername { return $peerfile; } } -#----------------------------- Timer management ------------------------ =pod =head2 Debug @@ -267,6 +266,7 @@ sub SocketTimeout { # a connection failure: $ConnectionRetriesLeft--; } +#----------------------------- Timer management ------------------------ =pod @@ -301,14 +301,10 @@ sub Tick { # # For each inflight transaction, tick down its timeout counter. # - 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') { + if ($State ne 'Idle') { Debug(5,"Ticking Socket $State $item"); $ActiveConnections{$item}->data->Tick(); } @@ -659,9 +655,9 @@ sub KillSocket { } if(exists($ActiveConnections{$Socket})) { delete($ActiveConnections{$Socket}); + $ConnectionCount--; + if ($ConnectionCount < 0) { $ConnectionCount = 0; } } - $ConnectionCount--; - # If the connection count has gone to zero and there is work in the # work queue, the work all gets failed with con_lost. #