projects
/
oweals
/
gnunet.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
- fix "broken connection" notifications
[oweals/gnunet.git]
/
src
/
datastore
/
perf_plugin_datastore.c
diff --git
a/src/datastore/perf_plugin_datastore.c
b/src/datastore/perf_plugin_datastore.c
index 111e57b592d8d9c90c1f0da12213c55d692094a5..908a7ee5564294cff8a39ef7246cd634dbadcaf2 100644
(file)
--- a/
src/datastore/perf_plugin_datastore.c
+++ b/
src/datastore/perf_plugin_datastore.c
@@
-27,7
+27,7
@@
#include "gnunet_util_lib.h"
#include "gnunet_protocols.h"
#include "gnunet_datastore_plugin.h"
#include "gnunet_util_lib.h"
#include "gnunet_protocols.h"
#include "gnunet_datastore_plugin.h"
-#include "gnunet_testing_lib
-new
.h"
+#include "gnunet_testing_lib.h"
#include <gauger.h>
/**
#include <gauger.h>
/**
@@
-115,7
+115,7
@@
putValue (struct GNUNET_DATASTORE_PluginFunctions *api, int i, int k)
size = size - (size & 7); /* always multiple of 8 */
/* generate random key */
size = size - (size & 7); /* always multiple of 8 */
/* generate random key */
- key.bits[0] = (unsigned int) GNUNET_TIME_absolute_get ().abs_value;
+ key.bits[0] = (unsigned int) GNUNET_TIME_absolute_get ().abs_value
_us
;
GNUNET_CRYPTO_hash (&key, sizeof (struct GNUNET_HashCode), &key);
memset (value, i, size);
if (i > 255)
GNUNET_CRYPTO_hash (&key, sizeof (struct GNUNET_HashCode), &key);
memset (value, i, size);
if (i > 255)
@@
-163,10
+163,11
@@
iterate_zeros (void *cls, const struct GNUNET_HashCode * key, uint32_t size,
memcpy (&i, &cdata[4], sizeof (i));
hits[i / 8] |= (1 << (i % 8));
memcpy (&i, &cdata[4], sizeof (i));
hits[i / 8] |= (1 << (i % 8));
- GNUNET_log (GNUNET_ERROR_TYPE_DEBUG,
- "Found result %d type=%u, priority=%u, size=%u, expire=%
llu
\n",
+ GNUNET_log (GNUNET_ERROR_TYPE_DEBUG,
+ "Found result %d type=%u, priority=%u, size=%u, expire=%
s
\n",
i,
i,
- type, priority, size, (unsigned long long) expiration.abs_value);
+ type, priority, size,
+ GNUNET_STRINGS_absolute_time_to_string (expiration));
crc->cnt++;
if (crc->cnt == PUT_10 / 4 - 1)
{
crc->cnt++;
if (crc->cnt == PUT_10 / 4 - 1)
{
@@
-178,13
+179,15
@@
iterate_zeros (void *cls, const struct GNUNET_HashCode * key, uint32_t size,
bc++;
crc->end = GNUNET_TIME_absolute_get ();
bc++;
crc->end = GNUNET_TIME_absolute_get ();
- printf ("%s took %
llu m
s yielding %u/%u items\n",
+ printf ("%s took %s yielding %u/%u items\n",
"Select random zero-anonymity item",
"Select random zero-anonymity item",
- (unsigned long long) (crc->end.abs_value - crc->start.abs_value),
+ GNUNET_STRINGS_relative_time_to_string (GNUNET_TIME_absolute_get_difference (crc->start,
+ crc->end),
+ GNUNET_YES),
bc, crc->cnt);
if (crc->cnt > 0)
GAUGER (category, "Select random zero-anonymity item",
bc, crc->cnt);
if (crc->cnt > 0)
GAUGER (category, "Select random zero-anonymity item",
- (crc->end.abs_value
- crc->start.abs_value)
/ crc->cnt,
+ (crc->end.abs_value
_us - crc->start.abs_value_us) / 1000LL
/ crc->cnt,
"ms/item");
memset (hits, 0, sizeof (hits));
crc->phase++;
"ms/item");
memset (hits, 0, sizeof (hits));
crc->phase++;
@@
-220,13
+223,15
@@
expiration_get (void *cls, const struct GNUNET_HashCode * key, uint32_t size,
bc++;
crc->end = GNUNET_TIME_absolute_get ();
bc++;
crc->end = GNUNET_TIME_absolute_get ();
- printf ("%s took %
llu m
s yielding %u/%u items\n",
+ printf ("%s took %s yielding %u/%u items\n",
"Selecting and deleting by expiration",
"Selecting and deleting by expiration",
- (unsigned long long) (crc->end.abs_value - crc->start.abs_value),
+ GNUNET_STRINGS_relative_time_to_string (GNUNET_TIME_absolute_get_difference (crc->start,
+ crc->end),
+ GNUNET_YES),
bc, (unsigned int) PUT_10);
if (crc->cnt > 0)
GAUGER (category, "Selecting and deleting by expiration",
bc, (unsigned int) PUT_10);
if (crc->cnt > 0)
GAUGER (category, "Selecting and deleting by expiration",
- (crc->end.abs_value
- crc->start.abs_value)
/ crc->cnt,
+ (crc->end.abs_value
_us - crc->start.abs_value_us) / 1000LL
/ crc->cnt,
"ms/item");
memset (hits, 0, sizeof (hits));
if (++crc->iter == ITERATIONS)
"ms/item");
memset (hits, 0, sizeof (hits));
if (++crc->iter == ITERATIONS)
@@
-266,13
+271,15
@@
replication_get (void *cls, const struct GNUNET_HashCode * key, uint32_t size,
bc++;
crc->end = GNUNET_TIME_absolute_get ();
bc++;
crc->end = GNUNET_TIME_absolute_get ();
- printf ("%s took %
llu m
s yielding %u/%u items\n",
+ printf ("%s took %s yielding %u/%u items\n",
"Selecting random item for replication",
"Selecting random item for replication",
- (unsigned long long) (crc->end.abs_value - crc->start.abs_value),
+ GNUNET_STRINGS_relative_time_to_string (GNUNET_TIME_absolute_get_difference (crc->start,
+ crc->end),
+ GNUNET_YES),
bc, (unsigned int) PUT_10);
if (crc->cnt > 0)
GAUGER (category, "Selecting random item for replication",
bc, (unsigned int) PUT_10);
if (crc->cnt > 0)
GAUGER (category, "Selecting random item for replication",
- (crc->end.abs_value
- crc->start.abs_value)
/ crc->cnt,
+ (crc->end.abs_value
_us - crc->start.abs_value_us) / 1000LL
/ crc->cnt,
"ms/item");
memset (hits, 0, sizeof (hits));
crc->phase++;
"ms/item");
memset (hits, 0, sizeof (hits));
crc->phase++;
@@
-342,7
+349,7
@@
test (void *cls, const struct GNUNET_SCHEDULER_TaskContext *tc)
GNUNET_break (0);
crc->phase = RP_ERROR;
}
GNUNET_break (0);
crc->phase = RP_ERROR;
}
- GNUNET_log (GNUNET_ERROR_TYPE_DEBUG,
+ GNUNET_log (GNUNET_ERROR_TYPE_DEBUG,
"In phase %d, iteration %u\n", crc->phase, crc->cnt);
switch (crc->phase)
{
"In phase %d, iteration %u\n", crc->phase, crc->cnt);
switch (crc->phase)
{
@@
-359,12
+366,14
@@
test (void *cls, const struct GNUNET_SCHEDULER_TaskContext *tc)
putValue (crc->api, j, crc->i);
crc->end = GNUNET_TIME_absolute_get ();
{
putValue (crc->api, j, crc->i);
crc->end = GNUNET_TIME_absolute_get ();
{
- printf ("%s took %llu ms for %llu items\n", "Storing an item",
- (unsigned long long) (crc->end.abs_value - crc->start.abs_value),
+ printf ("%s took %s for %llu items\n", "Storing an item",
+ GNUNET_STRINGS_relative_time_to_string (GNUNET_TIME_absolute_get_difference (crc->start,
+ crc->end),
+ GNUNET_YES),
PUT_10);
if (PUT_10 > 0)
GAUGER (category, "Storing an item",
PUT_10);
if (PUT_10 > 0)
GAUGER (category, "Storing an item",
- (crc->end.abs_value
- crc->start.abs_value)
/ PUT_10,
+ (crc->end.abs_value
_us - crc->start.abs_value_us) / 1000LL
/ PUT_10,
"ms/item");
}
crc->i++;
"ms/item");
}
crc->i++;
@@
-421,6
+430,8
@@
load_plugin (const struct GNUNET_CONFIGURATION_Handle *cfg)
if (NULL == (ret = GNUNET_PLUGIN_load (libname, &env)))
{
FPRINTF (stderr, "Failed to load plugin `%s'!\n", name);
if (NULL == (ret = GNUNET_PLUGIN_load (libname, &env)))
{
FPRINTF (stderr, "Failed to load plugin `%s'!\n", name);
+ GNUNET_free (name);
+ GNUNET_free (libname);
return NULL;
}
GNUNET_free (libname);
return NULL;
}
GNUNET_free (libname);
@@
-436,6
+447,11
@@
run (void *cls, char *const *args, const char *cfgfile,
struct GNUNET_DATASTORE_PluginFunctions *api;
struct CpsRunContext *crc;
struct GNUNET_DATASTORE_PluginFunctions *api;
struct CpsRunContext *crc;
+ if (NULL == c)
+ {
+ GNUNET_break (0);
+ return;
+ }
api = load_plugin (c);
if (api == NULL)
{
api = load_plugin (c);
if (api == NULL)
{