diff options
author | Christian Grothoff <christian@grothoff.org> | 2011-10-19 13:11:26 +0000 |
---|---|---|
committer | Christian Grothoff <christian@grothoff.org> | 2011-10-19 13:11:26 +0000 |
commit | 5d89d809d7d10227039786922bfd3561a2f07572 (patch) | |
tree | a6053f49957a7eb31d4e7b54467e0fc05994b65f /src/fs/gnunet-service-fs_pe.c | |
parent | 57f5bfafca87873061bc6aba6f47439d59343045 (diff) | |
download | gnunet-5d89d809d7d10227039786922bfd3561a2f07572.tar.gz gnunet-5d89d809d7d10227039786922bfd3561a2f07572.zip |
even more stats, more logging
Diffstat (limited to 'src/fs/gnunet-service-fs_pe.c')
-rw-r--r-- | src/fs/gnunet-service-fs_pe.c | 27 |
1 files changed, 23 insertions, 4 deletions
diff --git a/src/fs/gnunet-service-fs_pe.c b/src/fs/gnunet-service-fs_pe.c index ed59c59e6..10c522299 100644 --- a/src/fs/gnunet-service-fs_pe.c +++ b/src/fs/gnunet-service-fs_pe.c | |||
@@ -302,6 +302,9 @@ transmit_message_callback (void *cls, size_t buf_size, void *buf) | |||
302 | { | 302 | { |
303 | /* failed, try again... */ | 303 | /* failed, try again... */ |
304 | pp->task = GNUNET_SCHEDULER_add_now (&schedule_peer_transmission, pp); | 304 | pp->task = GNUNET_SCHEDULER_add_now (&schedule_peer_transmission, pp); |
305 | GNUNET_STATISTICS_update (GSF_stats, | ||
306 | gettext_noop ("# transmission failed (core has no bandwidth)"), 1, | ||
307 | GNUNET_NO); | ||
305 | return 0; | 308 | return 0; |
306 | } | 309 | } |
307 | rp = GNUNET_CONTAINER_heap_peek (pp->priority_heap); | 310 | rp = GNUNET_CONTAINER_heap_peek (pp->priority_heap); |
@@ -350,6 +353,7 @@ schedule_peer_transmission (void *cls, | |||
350 | struct PeerPlan *pp = cls; | 353 | struct PeerPlan *pp = cls; |
351 | struct GSF_RequestPlan *rp; | 354 | struct GSF_RequestPlan *rp; |
352 | size_t msize; | 355 | size_t msize; |
356 | struct GNUNET_TIME_Relative delay; | ||
353 | 357 | ||
354 | pp->task = GNUNET_SCHEDULER_NO_TASK; | 358 | pp->task = GNUNET_SCHEDULER_NO_TASK; |
355 | if (pp->pth != NULL) | 359 | if (pp->pth != NULL) |
@@ -357,6 +361,14 @@ schedule_peer_transmission (void *cls, | |||
357 | GSF_peer_transmit_cancel_ (pp->pth); | 361 | GSF_peer_transmit_cancel_ (pp->pth); |
358 | pp->pth = NULL; | 362 | pp->pth = NULL; |
359 | } | 363 | } |
364 | GNUNET_STATISTICS_set (GSF_stats, | ||
365 | gettext_noop ("# query delay heap size"), | ||
366 | GNUNET_CONTAINER_heap_get_size (pp->delay_heap), | ||
367 | GNUNET_NO); | ||
368 | GNUNET_STATISTICS_set (GSF_stats, | ||
369 | gettext_noop ("# query priority heap size"), | ||
370 | GNUNET_CONTAINER_heap_get_size (pp->priority_heap), | ||
371 | GNUNET_NO); | ||
360 | /* move ready requests to priority queue */ | 372 | /* move ready requests to priority queue */ |
361 | while ((NULL != (rp = GNUNET_CONTAINER_heap_peek (pp->delay_heap))) && | 373 | while ((NULL != (rp = GNUNET_CONTAINER_heap_peek (pp->delay_heap))) && |
362 | (GNUNET_TIME_absolute_get_remaining | 374 | (GNUNET_TIME_absolute_get_remaining |
@@ -377,19 +389,26 @@ schedule_peer_transmission (void *cls, | |||
377 | #endif | 389 | #endif |
378 | return; /* both queues empty */ | 390 | return; /* both queues empty */ |
379 | } | 391 | } |
392 | delay = GNUNET_TIME_absolute_get_remaining (rp->earliest_transmission); | ||
380 | #if DEBUG_FS | 393 | #if DEBUG_FS |
381 | GNUNET_log (GNUNET_ERROR_TYPE_DEBUG, | 394 | GNUNET_log (GNUNET_ERROR_TYPE_DEBUG, |
382 | "Sleeping for %llu ms before retrying requests on plan %p.\n", | 395 | "Sleeping for %llu ms before retrying requests on plan %p.\n", |
383 | (unsigned long long) | 396 | (unsigned long long) |
384 | GNUNET_TIME_absolute_get_remaining | 397 | delay.rel_value, pp); |
385 | (rp->earliest_transmission).rel_value, pp); | ||
386 | #endif | 398 | #endif |
399 | GNUNET_STATISTICS_set (GSF_stats, | ||
400 | gettext_noop ("# delay heap timeout"), | ||
401 | delay.rel_value, | ||
402 | GNUNET_NO); | ||
403 | |||
387 | pp->task = | 404 | pp->task = |
388 | GNUNET_SCHEDULER_add_delayed (GNUNET_TIME_absolute_get_remaining | 405 | GNUNET_SCHEDULER_add_delayed (delay, |
389 | (rp->earliest_transmission), | ||
390 | &schedule_peer_transmission, pp); | 406 | &schedule_peer_transmission, pp); |
391 | return; | 407 | return; |
392 | } | 408 | } |
409 | GNUNET_STATISTICS_update (GSF_stats, | ||
410 | gettext_noop ("# query plans executed"), 1, | ||
411 | GNUNET_NO); | ||
393 | /* process from priority heap */ | 412 | /* process from priority heap */ |
394 | rp = GNUNET_CONTAINER_heap_peek (pp->priority_heap); | 413 | rp = GNUNET_CONTAINER_heap_peek (pp->priority_heap); |
395 | #if DEBUG_FS > 1 | 414 | #if DEBUG_FS > 1 |