| 417 | | void houseKeeping() |
|---|
| 418 | | { |
|---|
| 419 | | static timeval last; |
|---|
| 420 | | |
|---|
| 421 | | struct timeval now; |
|---|
| 422 | | gettimeofday(&now, 0); |
|---|
| 423 | | |
|---|
| 424 | | if(DiffTime(last, now) < 0.3) |
|---|
| 425 | | return; |
|---|
| 426 | | |
|---|
| 427 | | int weWaitingFor, origWaitingFor, weSlow, origSlow; |
|---|
| 428 | | WeOrigSlowQueriesDelta(weWaitingFor, origWaitingFor, weSlow, origSlow); |
|---|
| 429 | | |
|---|
| 430 | | if(!g_throttled) { |
|---|
| 431 | | if( weWaitingFor > 1000) { |
|---|
| 432 | | cerr<<"Too many questions ("<<weWaitingFor<<") outstanding, throttling"<<endl; |
|---|
| 433 | | g_throttled=true; |
|---|
| 434 | | } |
|---|
| 435 | | } |
|---|
| 436 | | else if(weWaitingFor < 750) { |
|---|
| 437 | | cerr<<"Unthrottling ("<<weWaitingFor<<")"<<endl; |
|---|
| 438 | | g_throttled=false; |
|---|
| 439 | | } |
|---|
| 440 | | |
|---|
| 441 | | if(DiffTime(last, now) < 2) |
|---|
| 442 | | return; |
|---|
| 443 | | |
|---|
| 444 | | last=now; |
|---|
| 445 | | |
|---|
| 446 | | /* |
|---|
| 447 | | Questions - Pend. - Drop = Answers = (On time + Late) = (Err + Ok) |
|---|
| 448 | | Orig 9 21 29 36 47 57 66 72 |
|---|
| 449 | | |
|---|
| 450 | | |
|---|
| 451 | | */ |
|---|
| | 416 | void printStats(uint64_t origWaitingFor=0, uint64_t weWaitingFor=0) |
|---|
| | 417 | { |
|---|
| | 435 | |
|---|
| | 436 | } |
|---|
| | 437 | |
|---|
| | 438 | void houseKeeping() |
|---|
| | 439 | { |
|---|
| | 440 | static timeval last; |
|---|
| | 441 | |
|---|
| | 442 | struct timeval now; |
|---|
| | 443 | gettimeofday(&now, 0); |
|---|
| | 444 | |
|---|
| | 445 | if(DiffTime(last, now) < 0.3) |
|---|
| | 446 | return; |
|---|
| | 447 | |
|---|
| | 448 | int weWaitingFor, origWaitingFor, weSlow, origSlow; |
|---|
| | 449 | WeOrigSlowQueriesDelta(weWaitingFor, origWaitingFor, weSlow, origSlow); |
|---|
| | 450 | |
|---|
| | 451 | if(!g_throttled) { |
|---|
| | 452 | if( weWaitingFor > 1000) { |
|---|
| | 453 | cerr<<"Too many questions ("<<weWaitingFor<<") outstanding, throttling"<<endl; |
|---|
| | 454 | g_throttled=true; |
|---|
| | 455 | } |
|---|
| | 456 | } |
|---|
| | 457 | else if(weWaitingFor < 750) { |
|---|
| | 458 | cerr<<"Unthrottling ("<<weWaitingFor<<")"<<endl; |
|---|
| | 459 | g_throttled=false; |
|---|
| | 460 | } |
|---|
| | 461 | |
|---|
| | 462 | if(DiffTime(last, now) < 2) |
|---|
| | 463 | return; |
|---|
| | 464 | |
|---|
| | 465 | last=now; |
|---|
| | 466 | |
|---|
| | 467 | /* |
|---|
| | 468 | Questions - Pend. - Drop = Answers = (On time + Late) = (Err + Ok) |
|---|
| | 469 | Orig 9 21 29 36 47 57 66 72 |
|---|
| | 470 | |
|---|
| | 471 | |
|---|
| | 472 | */ |
|---|
| | 473 | |
|---|
| | 474 | printStats(origWaitingFor, weWaitingFor); |
|---|