gnunet-svn
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[GNUnet-SVN] [gnunet] branch master updated (19762ee38 -> d8c24ef01)


From: gnunet
Subject: [GNUnet-SVN] [gnunet] branch master updated (19762ee38 -> d8c24ef01)
Date: Fri, 24 Aug 2018 10:41:36 +0200

This is an automated email from the git hooks/post-receive script.

julius-buenger pushed a change to branch master
in repository gnunet.

    from 19762ee38 Count number of unrequested pull replies with statistics
     new 2cb60679f Refactor code cosmetically (rps profiler)
     new d8c24ef01 Unify strings in rps profiler

The 2 revisions listed above as "new" are entirely new to this
repository and will be described in separate emails.  The revisions
listed as "add" were already present in the repository and have only
been added to this reference.


Summary of changes:
 src/rps/gnunet-rps-profiler.c | 259 ++++++++++++++++++------------------------
 1 file changed, 113 insertions(+), 146 deletions(-)

diff --git a/src/rps/gnunet-rps-profiler.c b/src/rps/gnunet-rps-profiler.c
index 277688b56..79f0fbe2f 100644
--- a/src/rps/gnunet-rps-profiler.c
+++ b/src/rps/gnunet-rps-profiler.c
@@ -93,6 +93,25 @@ enum STAT_TYPE
   STAT_TYPE_MAX,                      /*  16 */
 };
 
+static char* stat_type_strings[] = {
+  "# rounds",
+  "# rounds blocked",
+  "# rounds blocked - too many pushes",
+  "# rounds blocked - no pushes",
+  "# rounds blocked - no pull replies",
+  "# rounds blocked - too many pushes, no pull replies",
+  "# rounds blocked - no pushes, no pull replies",
+  "# push send issued",
+  "# pull request send issued",
+  "# pull reply send issued",
+  "# pushes sent",
+  "# pull requests sent",
+  "# pull replys sent",
+  "# push message received",
+  "# pull request message received",
+  "# pull reply messages received",
+};
+
 struct STATcls
 {
   struct RPSPeer *rps_peer;
@@ -109,67 +128,99 @@ struct STATcls
  */
 enum STAT_TYPE stat_str_2_type (const char *stat_str)
 {
-  if (0 == strncmp ("# rounds blocked - no pull replies", stat_str, strlen ("# 
rounds blocked - no pull replies")))
+  if (0 == strncmp (stat_type_strings[STAT_TYPE_BLOCKS_NO_PULL],
+                    stat_str,
+                    strlen (stat_type_strings[STAT_TYPE_BLOCKS_NO_PULL])))
   {
     return STAT_TYPE_BLOCKS_NO_PULL;
   }
-  else if (0 == strncmp ("# rounds blocked - too many pushes, no pull 
replies", stat_str, strlen ("# rounds blocked - too many pushes, no pull 
replies")))
+  else if (0 == strncmp (stat_type_strings[STAT_TYPE_BLOCKS_MANY_PUSH_NO_PULL],
+                         stat_str,
+                         strlen 
(stat_type_strings[STAT_TYPE_BLOCKS_MANY_PUSH_NO_PULL])))
   {
     return STAT_TYPE_BLOCKS_MANY_PUSH_NO_PULL;
   }
-  else if (0 == strncmp ("# rounds blocked - too many pushes", stat_str, 
strlen ("# rounds blocked - too many pushes")))
+  else if (0 == strncmp (stat_type_strings[STAT_TYPE_BLOCKS_MANY_PUSH],
+                         stat_str,
+                         strlen 
(stat_type_strings[STAT_TYPE_BLOCKS_MANY_PUSH])))
   {
     return STAT_TYPE_BLOCKS_MANY_PUSH;
   }
-  else if (0 == strncmp ("# rounds blocked - no pushes, no pull replies", 
stat_str, strlen ("# rounds blocked - no pushes, no pull replies")))
+  else if (0 == strncmp (stat_type_strings[STAT_TYPE_BLOCKS_NO_PUSH_NO_PULL],
+                         stat_str,
+                         strlen 
(stat_type_strings[STAT_TYPE_BLOCKS_NO_PUSH_NO_PULL])))
   {
     return STAT_TYPE_BLOCKS_NO_PUSH_NO_PULL;
   }
-  else if (0 == strncmp ("# rounds blocked - no pushes", stat_str, strlen ("# 
rounds blocked - no pushes")))
+  else if (0 == strncmp (stat_type_strings[STAT_TYPE_BLOCKS_NO_PUSH],
+                         stat_str,
+                         strlen (stat_type_strings[STAT_TYPE_BLOCKS_NO_PUSH])))
   {
     return STAT_TYPE_BLOCKS_NO_PUSH;
   }
-  else if (0 == strncmp ("# rounds blocked", stat_str, strlen ("# rounds 
blocked")))
+  else if (0 == strncmp (stat_type_strings[STAT_TYPE_BLOCKS],
+                         stat_str,
+                         strlen (stat_type_strings[STAT_TYPE_BLOCKS])))
   {
     return STAT_TYPE_BLOCKS;
   }
-  else if (0 == strncmp ("# rounds", stat_str, strlen ("# rounds")))
+  else if (0 == strncmp (stat_type_strings[STAT_TYPE_ROUNDS],
+                         stat_str,
+                         strlen (stat_type_strings[STAT_TYPE_ROUNDS])))
   {
     return STAT_TYPE_ROUNDS;
   }
-  else if (0 == strncmp ("# push send issued", stat_str, strlen ("# push send 
issued")))
+  else if (0 == strncmp (stat_type_strings[STAT_TYPE_ISSUED_PUSH_SEND],
+                         stat_str,
+                         strlen 
(stat_type_strings[STAT_TYPE_ISSUED_PUSH_SEND])))
   {
     return STAT_TYPE_ISSUED_PUSH_SEND;
   }
-  else if (0 == strncmp ("# pull request send issued", stat_str, strlen ("# 
pull request send issued")))
+  else if (0 == strncmp (stat_type_strings[STAT_TYPE_ISSUED_PULL_REQ],
+                         stat_str,
+                         strlen 
(stat_type_strings[STAT_TYPE_ISSUED_PULL_REQ])))
   {
     return STAT_TYPE_ISSUED_PULL_REQ;
   }
-  else if (0 == strncmp ("# pull reply send issued", stat_str, strlen ("# pull 
reply send issued")))
+  else if (0 == strncmp (stat_type_strings[STAT_TYPE_ISSUED_PULL_REP],
+                         stat_str,
+                         strlen 
(stat_type_strings[STAT_TYPE_ISSUED_PULL_REP])))
   {
     return STAT_TYPE_ISSUED_PULL_REP;
   }
-  else if (0 == strncmp ("# pushes sent", stat_str, strlen ("# pushes sent")))
+  else if (0 == strncmp (stat_type_strings[STAT_TYPE_SENT_PUSH_SEND],
+                         stat_str,
+                         strlen (stat_type_strings[STAT_TYPE_SENT_PUSH_SEND])))
   {
     return STAT_TYPE_SENT_PUSH_SEND;
   }
-  else if (0 == strncmp ("# pull requests sent", stat_str, strlen ("# pull 
requests sent")))
+  else if (0 == strncmp (stat_type_strings[STAT_TYPE_SENT_PULL_REQ],
+                         stat_str,
+                         strlen (stat_type_strings[STAT_TYPE_SENT_PULL_REQ])))
   {
     return STAT_TYPE_SENT_PULL_REQ;
   }
-  else if (0 == strncmp ("# pull replys sent", stat_str, strlen ("# pull 
replys sent")))
+  else if (0 == strncmp (stat_type_strings[STAT_TYPE_SENT_PULL_REP],
+                         stat_str,
+                         strlen (stat_type_strings[STAT_TYPE_SENT_PULL_REP])))
   {
     return STAT_TYPE_SENT_PULL_REP;
   }
-  else if (0 == strncmp ("# push message received", stat_str, strlen ("# push 
message received")))
+  else if (0 == strncmp (stat_type_strings[STAT_TYPE_RECV_PUSH_SEND],
+                         stat_str,
+                         strlen (stat_type_strings[STAT_TYPE_RECV_PUSH_SEND])))
   {
     return STAT_TYPE_RECV_PUSH_SEND;
   }
-  else if (0 == strncmp ("# pull request message received", stat_str, strlen 
("# pull request message received")))
+  else if (0 == strncmp (stat_type_strings[STAT_TYPE_RECV_PULL_REQ],
+                         stat_str,
+                         strlen (stat_type_strings[STAT_TYPE_RECV_PULL_REQ])))
   {
     return STAT_TYPE_RECV_PULL_REQ;
   }
-  else if (0 == strncmp ("# pull reply messages received", stat_str, strlen 
("# pull reply messages received")))
+  else if (0 == strncmp (stat_type_strings[STAT_TYPE_RECV_PULL_REP],
+                         stat_str,
+                         strlen (stat_type_strings[STAT_TYPE_RECV_PULL_REP])))
   {
     return STAT_TYPE_RECV_PULL_REP;
   }
@@ -178,58 +229,6 @@ enum STAT_TYPE stat_str_2_type (const char *stat_str)
 
 
 /**
- * @brief Converts #STAT_TYPE enum to the equivalent string representation that
- * is stored with the statistics service.
- *
- * @param stat_type #STAT_TYPE enum
- *
- * @return string representation that matches statistics value
- */
-char* stat_type_2_str (enum STAT_TYPE stat_type)
-{
-  switch (stat_type)
-  {
-    case STAT_TYPE_ROUNDS:
-      return "# rounds";
-    case STAT_TYPE_BLOCKS:
-      return "# rounds blocked";
-    case STAT_TYPE_BLOCKS_MANY_PUSH:
-      return "# rounds blocked - too many pushes";
-    case STAT_TYPE_BLOCKS_NO_PUSH:
-      return "# rounds blocked - no pushes";
-    case STAT_TYPE_BLOCKS_NO_PULL:
-      return "# rounds blocked - no pull replies";
-    case STAT_TYPE_BLOCKS_MANY_PUSH_NO_PULL:
-      return "# rounds blocked - too many pushes, no pull replies";
-    case STAT_TYPE_BLOCKS_NO_PUSH_NO_PULL:
-      return "# rounds blocked - no pushes, no pull replies";
-    case STAT_TYPE_ISSUED_PUSH_SEND:
-      return "# push send issued";
-    case STAT_TYPE_ISSUED_PULL_REQ:
-      return "# pull request send issued";
-    case STAT_TYPE_ISSUED_PULL_REP:
-      return "# pull reply send issued";
-    case STAT_TYPE_SENT_PUSH_SEND:
-      return "# pushes sent";
-    case STAT_TYPE_SENT_PULL_REQ:
-      return "# pull requests sent";
-    case STAT_TYPE_SENT_PULL_REP:
-      return "# pull replys sent";
-    case STAT_TYPE_RECV_PUSH_SEND:
-      return "# push message received";
-    case STAT_TYPE_RECV_PULL_REQ:
-      return "# pull request message received";
-    case STAT_TYPE_RECV_PULL_REP:
-      return "# pull reply messages received";
-    case STAT_TYPE_MAX:
-    default:
-      return "ERROR";
-      ;
-  }
-}
-
-
-/**
  * @brief Indicates whether peer should go off- or online
  */
 enum PEER_ONLINE_DELTA {
@@ -940,7 +939,7 @@ clean_peer (unsigned peer_index)
       GNUNET_log (GNUNET_ERROR_TYPE_WARNING,
                   "(%u) did not yet receive stat value for `%s'\n",
                   rps_peers[peer_index].index,
-                  stat_type_2_str (stat_type));
+                  stat_type_strings[stat_type]);
       GNUNET_STATISTICS_get_cancel (
           rps_peers[peer_index].h_stat_get[stat_type]);
     }
@@ -960,6 +959,7 @@ shutdown_op (void *cls)
 {
   unsigned int i;
   struct OpListEntry *entry;
+  (void) cls;
 
   GNUNET_log (GNUNET_ERROR_TYPE_INFO,
               "Shutdown task scheduled, going down.\n");
@@ -999,6 +999,8 @@ shutdown_op (void *cls)
 static void
 trigger_shutdown (void *cls)
 {
+  (void) cls;
+
   GNUNET_log (GNUNET_ERROR_TYPE_INFO,
               "Shutdown was triggerd by timeout, going down.\n");
   shutdown_task = NULL;
@@ -1013,6 +1015,7 @@ static void
 post_test_op (void *cls)
 {
   unsigned int i;
+  (void) cls;
 
   post_test_task = NULL;
   post_test = GNUNET_YES;
@@ -1080,6 +1083,7 @@ info_cb (void *cb_cls,
          const char *emsg)
 {
   struct OpListEntry *entry = (struct OpListEntry *) cb_cls;
+  (void) op;
 
   if (GNUNET_YES == in_shutdown || GNUNET_YES == post_test)
   {
@@ -1238,11 +1242,16 @@ stat_disconnect_adapter (void *cls, void *op_result)
  *          operation has executed successfully.
  */
 static void
-stat_complete_cb (void *cls, struct GNUNET_TESTBED_Operation *op,
-                  void *ca_result, const char *emsg )
+stat_complete_cb (void *cls,
+                  struct GNUNET_TESTBED_Operation *op,
+                  void *ca_result,
+                  const char *emsg )
 {
   //struct GNUNET_STATISTICS_Handle *sh = ca_result;
   //struct RPSPeer *peer = (struct RPSPeer *) cls;
+  (void) cls;
+  (void) op;
+  (void) ca_result;
 
   if (NULL != emsg)
   {
@@ -1552,6 +1561,7 @@ churn_cb (void *cls,
 {
   // FIXME
   struct OpListEntry *entry = cls;
+  (void) op;
 
   if (GNUNET_YES == in_shutdown || GNUNET_YES == post_test)
   {
@@ -1687,6 +1697,7 @@ churn (void *cls)
   double prob_go_offline;
   double portion_go_online;
   double portion_go_offline;
+  (void) cls;
 
   if (GNUNET_YES == in_shutdown || GNUNET_YES == post_test)
   {
@@ -1866,6 +1877,7 @@ file_name_cb (void *cls, const char *filename)
     struct GNUNET_CRYPTO_AuthKey auth_key;
     const char *key_char;
     uint32_t i;
+    (void) cls;
 
     key_char = filename + 20; /* Length of "/tmp/rps/sampler_el-" */
     tofile (filename, "--------------------------\n");
@@ -1913,8 +1925,8 @@ static uint32_t binom (uint32_t n, uint32_t k)
 {
   //GNUNET_assert (n >= k);
   if (k > n) return 0;
-  if (0 > n) return 0;
-  if (0 > k) return 0;
+  if (0 > n) return 0; /* just for clarity - always false */
+  if (0 > k) return 0; /* just for clarity - always false */
   if (0 == k) return 1;
   return fac (n)
     /
@@ -2258,7 +2270,7 @@ void view_update_cb (void *cls,
          "%" PRIu64 " %" PRIu32 "",
          rps_peer->index,
          view_size);
-  for (int i = 0; i < view_size; i++)
+  for (uint64_t i = 0; i < view_size; i++)
   {
     GNUNET_log (GNUNET_ERROR_TYPE_DEBUG,
                "\t%s\n", GNUNET_i2s (&peers[i]));
@@ -2337,7 +2349,7 @@ void write_final_stats (void){
              rps_peers[i].stats[STAT_TYPE_RECV_PUSH_SEND],
              rps_peers[i].stats[STAT_TYPE_RECV_PULL_REQ],
              rps_peers[i].stats[STAT_TYPE_RECV_PULL_REP]);
-    for (uint32_t stat_type = STAT_TYPE_ROUNDS;
+    for (enum STAT_TYPE stat_type = STAT_TYPE_ROUNDS;
          stat_type < STAT_TYPE_MAX;
          stat_type++)
     {
@@ -2439,72 +2451,21 @@ stat_iterator (void *cls,
 {
   const struct STATcls *stat_cls = (const struct STATcls *) cls;
   struct RPSPeer *rps_peer = (struct RPSPeer *) stat_cls->rps_peer;
+  enum STAT_TYPE stat_type;
+  (void) subsystem;
+  (void) is_persistent;
 
   GNUNET_log (GNUNET_ERROR_TYPE_DEBUG, "Got stat value: %s - %" PRIu64 "\n",
-      //stat_type_2_str (stat_cls->stat_type),
       name,
       value);
   to_file (rps_peer->file_name_stats,
           "%s: %" PRIu64 "\n",
           name,
           value);
-  switch (stat_str_2_type (name))
-  {
-    case STAT_TYPE_ROUNDS:
-      rps_peer->stats[STAT_TYPE_ROUNDS] = value;
-      break;
-    case STAT_TYPE_BLOCKS:
-      rps_peer->stats[STAT_TYPE_BLOCKS] = value;
-      break;
-    case STAT_TYPE_BLOCKS_MANY_PUSH:
-      rps_peer->stats[STAT_TYPE_BLOCKS_MANY_PUSH] = value;
-      break;
-    case STAT_TYPE_BLOCKS_NO_PUSH:
-      rps_peer->stats[STAT_TYPE_BLOCKS_NO_PUSH] = value;
-      break;
-    case STAT_TYPE_BLOCKS_NO_PULL:
-      rps_peer->stats[STAT_TYPE_BLOCKS_NO_PULL] = value;
-      break;
-    case STAT_TYPE_BLOCKS_MANY_PUSH_NO_PULL:
-      rps_peer->stats[STAT_TYPE_BLOCKS_MANY_PUSH_NO_PULL] = value;
-      break;
-    case STAT_TYPE_BLOCKS_NO_PUSH_NO_PULL:
-      rps_peer->stats[STAT_TYPE_BLOCKS] = value;
-      break;
-    case STAT_TYPE_ISSUED_PUSH_SEND:
-      rps_peer->stats[STAT_TYPE_ISSUED_PUSH_SEND] = value;
-      break;
-    case STAT_TYPE_ISSUED_PULL_REQ:
-      rps_peer->stats[STAT_TYPE_ISSUED_PULL_REQ] = value;
-      break;
-    case STAT_TYPE_ISSUED_PULL_REP:
-      rps_peer->stats[STAT_TYPE_ISSUED_PULL_REP] = value;
-      break;
-    case STAT_TYPE_SENT_PUSH_SEND:
-      rps_peer->stats[STAT_TYPE_SENT_PUSH_SEND] = value;
-      break;
-    case STAT_TYPE_SENT_PULL_REQ:
-      rps_peer->stats[STAT_TYPE_SENT_PULL_REQ] = value;
-      break;
-    case STAT_TYPE_SENT_PULL_REP:
-      rps_peer->stats[STAT_TYPE_SENT_PULL_REP] = value;
-      break;
-    case STAT_TYPE_RECV_PUSH_SEND:
-      rps_peer->stats[STAT_TYPE_RECV_PUSH_SEND] = value;
-      break;
-    case STAT_TYPE_RECV_PULL_REQ:
-      rps_peer->stats[STAT_TYPE_RECV_PULL_REQ] = value;
-      break;
-    case STAT_TYPE_RECV_PULL_REP:
-      rps_peer->stats[STAT_TYPE_RECV_PULL_REP] = value;
-      break;
-    case STAT_TYPE_MAX:
-    default:
-      GNUNET_log (GNUNET_ERROR_TYPE_WARNING,
-                 "Unknown statistics string: %s\n",
-                 name);
-      break;
-  }
+  stat_type = stat_str_2_type (name);
+  GNUNET_assert (STAT_TYPE_ROUNDS <= stat_type &&
+                 STAT_TYPE_MAX > stat_type);
+  rps_peer->stats[stat_type] = value;
   return GNUNET_OK;
 }
 
@@ -2532,17 +2493,17 @@ void post_profiler (struct RPSPeer *rps_peer)
       stat_cls->stat_type = stat_type;
       rps_peer->file_name_stats =
         store_prefix_file_name (rps_peer->peer_id, "stats");
-      rps_peer->h_stat_get[stat_type] = GNUNET_STATISTICS_get (
-          rps_peer->stats_h,
-          "rps",
-          stat_type_2_str (stat_type),
-          post_test_shutdown_ready_cb,
-          stat_iterator,
-          (struct STATcls *) stat_cls);
+      rps_peer->h_stat_get[stat_type] =
+        GNUNET_STATISTICS_get (rps_peer->stats_h,
+                               "rps",
+                               stat_type_strings [stat_type],
+                               post_test_shutdown_ready_cb,
+                               stat_iterator,
+                               (struct STATcls *) stat_cls);
       GNUNET_log (GNUNET_ERROR_TYPE_DEBUG,
-          "Requested statistics for %s (peer %" PRIu32 ")\n",
-          stat_type_2_str (stat_type),
-          rps_peer->index);
+                  "Requested statistics for %s (peer %" PRIu32 ")\n",
+                  stat_type_strings [stat_type],
+                  rps_peer->index);
     }
   }
 }
@@ -2575,6 +2536,9 @@ test_run (void *cls,
 {
   unsigned int i;
   struct OpListEntry *entry;
+  (void) cls;
+  (void) h;
+  (void) links_failed;
 
   GNUNET_log (GNUNET_ERROR_TYPE_DEBUG, "RUN was called\n");
 
@@ -2666,11 +2630,14 @@ test_run (void *cls,
  */
 static void
 run (void *cls,
-    char *const *args,
-    const char *cfgfile,
-    const struct GNUNET_CONFIGURATION_Handle *cfg)
+     char *const *args,
+     const char *cfgfile,
+     const struct GNUNET_CONFIGURATION_Handle *cfg)
 {
   //int ret_value;
+  (void) cls;
+  (void) args;
+  (void) cfgfile;
 
   /* Defaults for tests */
   churn_task = NULL;

-- 
To stop receiving notification emails like this one, please contact
address@hidden



reply via email to

[Prev in Thread] Current Thread [Next in Thread]