From: Vlad S. <ser...@us...> - 2005-06-21 19:07:37
|
Update of /cvsroot/naviserver/modules/nsdns In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv6805 Modified Files: nsdns.c Log Message: Index: nsdns.c =================================================================== RCS file: /cvsroot/naviserver/modules/nsdns/nsdns.c,v retrieving revision 1.11 retrieving revision 1.12 diff -C2 -d -r1.11 -r1.12 *** nsdns.c 21 Jun 2005 18:37:00 -0000 1.11 --- nsdns.c 21 Jun 2005 19:07:00 -0000 1.12 *************** *** 551,555 **** dnsQueues[id].maxsize = dnsQueues[id].size; dnsQueues[id].requests++; ! Ns_CondSignal(&dnsQueues[id].cond); Ns_MutexUnlock(&dnsQueues[id].lock); if(++id >= dnsThreads) id = 0; --- 551,555 ---- dnsQueues[id].maxsize = dnsQueues[id].size; dnsQueues[id].requests++; ! Ns_CondBroadcast(&dnsQueues[id].cond); Ns_MutexUnlock(&dnsQueues[id].lock); if(++id >= dnsThreads) id = 0; *************** *** 563,567 **** dnsQueue *queue; dnsRequest *req; ! unsigned long t0; struct timeval end_time; --- 563,567 ---- dnsQueue *queue; dnsRequest *req; ! unsigned long rt,wt; struct timeval end_time; *************** *** 605,608 **** --- 605,612 ---- } } + // Update statistics, in milliseconds + gettimeofday(&end_time,0); + rt = (end_time.tv_sec - req->start_time.tv_sec)*1000 + (end_time.tv_usec - req->start_time.tv_usec)/1000; + wt = (req->start_time.tv_sec - req->recv_time.tv_sec)*1000 + (req->start_time.tv_usec - req->recv_time.tv_usec)/1000; Ns_MutexLock(&queue->lock); // Put request structure back if not handled by proxy *************** *** 611,621 **** queue->freelist = req; } ! Ns_CondSignal(&queue->cond); ! gettimeofday(&end_time,0); ! // Update statistics, in milliseconds ! t0 = ((end_time.tv_sec - req->start_time.tv_sec)*1000 + (end_time.tv_usec - req->start_time.tv_usec))/1000; ! if(t0 > queue->rtime) queue->rtime = t0; ! t0 = ((req->start_time.tv_sec - req->recv_time.tv_sec)*1000 + (req->start_time.tv_usec - req->recv_time.tv_usec))/1000; ! if(t0 > queue->wtime) queue->wtime = t0; } } --- 615,620 ---- queue->freelist = req; } ! if(rt > queue->rtime) queue->rtime = rt; ! if(wt > queue->wtime) queue->wtime = wt; } } |