]> granicus.if.org Git - pdns/commitdiff
as expected, the 'delta' latency between time passed and time spent on network someti...
authorbert hubert <bert.hubert@netherlabs.nl>
Mon, 9 Oct 2017 18:43:20 +0000 (20:43 +0200)
committerbert hubert <bert.hubert@netherlabs.nl>
Mon, 9 Oct 2017 18:43:20 +0000 (20:43 +0200)
pdns/pdns_recursor.cc

index 55b88eeb0e1528e93eefcf122a7581d7b0bf410d..7508f9362e96393bec95da20f14b6d9332e5700e 100644 (file)
@@ -1271,10 +1271,10 @@ static void startDoResolve(void *p)
       //      cerr<<"SLOW: "<<ourtime<<"ms -> "<<dc->d_mdp.d_qname<<"|"<<DNSRecordContent::NumberToType(dc->d_mdp.d_qtype)<<endl;
       g_stats.ourtimeSlow++;
     }
-
-    newLat=ourtime*1000; // usec
-    g_stats.avgLatencyOursUsec=(1-1.0/g_latencyStatSize)*g_stats.avgLatencyOursUsec + (float)newLat/g_latencyStatSize;
-    
+    if(ourtime >= 0.0) {
+      newLat=ourtime*1000; // usec
+      g_stats.avgLatencyOursUsec=(1-1.0/g_latencyStatSize)*g_stats.avgLatencyOursUsec + (float)newLat/g_latencyStatSize;
+    }
     //    cout<<dc->d_mdp.d_qname<<"\t"<<MT->getUsec()<<"\t"<<sr.d_outqueries<<endl;
     delete dc;
     dc=0;