[C-MPI-commits] SF.net SVN: c-mpi:[63]
Status: Pre-Alpha
Brought to you by:
jmwozniak
|
From: <jmw...@us...> - 2010-04-29 21:42:47
|
Revision: 63
http://c-mpi.svn.sourceforge.net/c-mpi/?rev=63&view=rev
Author: jmwozniak
Date: 2010-04-29 21:42:41 +0000 (Thu, 29 Apr 2010)
Log Message:
-----------
Final CMPI test works.
Modified Paths:
--------------
include/lru_table.h
src/adts/lru_table.c
src/cmpi/cmpi.c
src/dense-1/dense.c
src/mpi_tools/mpi_tools.c
test/cmpi/test-update02.c
Modified: include/lru_table.h
===================================================================
--- include/lru_table.h 2010-04-29 21:01:27 UTC (rev 62)
+++ include/lru_table.h 2010-04-29 21:42:41 UTC (rev 63)
@@ -9,23 +9,23 @@
#include <stdlib.h>
#include <stdint.h>
#include <stdbool.h>
-#include <string.h>
+#include <string.h>
-#include <mpi_tools.h>
-#include <gossip.h>
+#include <mpi_tools.h>
+#include <gossip.h>
-// Use hash functions from hashtable.h
-#include "hashtable.h"
+// Use hash functions from hashtable.h
+#include "hashtable.h"
#include "dpkm_list.h"
-#include "keyvalue.h"
+#include "keyvalue.h"
struct lru_table
{
struct dpkm_list** array;
- struct dpkm_list* lru;
- int capacity;
+ struct dpkm_list* lru;
+ int capacity;
int size;
- int limit;
+ int limit;
};
struct lru_table* lru_table_create(int capacity, int limit);
@@ -34,18 +34,18 @@
char* key, char* data, int length);
bool lru_table_update(struct lru_table *table,
- char* key, char* data, int offset, int length);
+ char* key, char* data, int offset, int length);
struct keyvalue* lru_table_search(struct lru_table* table, char* key);
-struct keyvalue* lru_table_poll(struct lru_table* table);
+struct keyvalue* lru_table_poll(struct lru_table* table);
void lru_table_free(struct lru_table* target);
void lru_table_printf(char* format, struct lru_table* target);
-void lru_table_fprintf(FILE* file, char* format, struct lru_table* target);
+void lru_table_fprintf(FILE* file, char* format, struct lru_table* target);
+void lru_table_printdata(struct lru_table* target);
#endif
-
Modified: src/adts/lru_table.c
===================================================================
--- src/adts/lru_table.c 2010-04-29 21:01:27 UTC (rev 62)
+++ src/adts/lru_table.c 2010-04-29 21:42:41 UTC (rev 63)
@@ -83,7 +83,7 @@
struct keyvalue*
lru_table_add(struct lru_table* table, char* key, char* data, int length)
{
- // NOTE_F;
+ NOTE_FS(key);
struct keyvalue* result = NULL;
@@ -101,6 +101,7 @@
if (victim == NULL)
{
+ NOTE("no victim\n");
table->size++;
}
else
@@ -143,6 +144,7 @@
result->length = item->length;
printdata("lru found: ", item->data, item->length);
+ printf("\n");
return result;
}
@@ -190,6 +192,8 @@
DEBUG(printdata("new data: ", item->data, item->length));
+ DEBUG(lru_table_printdata(table));
+
return true;
}
@@ -319,10 +323,9 @@
*/
/**
- @param format specifies the output format for the data items
*/
void
-lru_table_printdata(char* format, struct lru_table* target)
+lru_table_printdata(struct lru_table* target)
{
int i;
printf("LRU_TABLE(%i) \n{\n", target->size);
Modified: src/cmpi/cmpi.c
===================================================================
--- src/cmpi/cmpi.c 2010-04-29 21:01:27 UTC (rev 62)
+++ src/cmpi/cmpi.c 2010-04-29 21:42:41 UTC (rev 63)
@@ -176,8 +176,11 @@
cmpi_cached_update(char* key, char* data, int offset, int length)
{
SHOW_FSII(key,offset,length);
- printdata("update: ", data, length) ;
+ printdata("update: ", data, length);
+ printf("\n");
+ DEBUG(lru_table_printdata(cmpi_cache));
+
if (lru_table_search(cmpi_cache, key))
{
lru_table_update(cmpi_cache, key, data, offset, length);
@@ -187,7 +190,7 @@
if (offset != 0)
{
char* update = malloc(offset+length);
- memset(update, ' ', offset);
+ memset(update, '\0', offset);
memcpy(update+offset, data, length);
lru_table_add(cmpi_cache, key, update, length);
}
@@ -196,7 +199,7 @@
lru_table_add(cmpi_cache, key, data, length);
}
}
- // DEBUG(lru_table_fprintf(debug_file, "%s", cmpi_cache));
+ DEBUG(lru_table_printdata(cmpi_cache));
DONE;
}
Modified: src/dense-1/dense.c
===================================================================
--- src/dense-1/dense.c 2010-04-29 21:01:27 UTC (rev 62)
+++ src/dense-1/dense.c 2010-04-29 21:42:41 UTC (rev 63)
@@ -279,7 +279,7 @@
handle_update(MPIRPC_Node caller, int unique, char* args,
char* blob, int blob_length)
{
- char key[CMPI_KEY_LENGTH];
+ char* key = malloc(strlen(args));
int offset;
SHOW_FSI(args, blob_length);
Modified: src/mpi_tools/mpi_tools.c
===================================================================
--- src/mpi_tools/mpi_tools.c 2010-04-29 21:01:27 UTC (rev 62)
+++ src/mpi_tools/mpi_tools.c 2010-04-29 21:42:41 UTC (rev 63)
@@ -99,7 +99,7 @@
else
printf("\\%i", (int) c);
}
- printf("]\n");
+ printf("]");
}
void
Modified: test/cmpi/test-update02.c
===================================================================
--- test/cmpi/test-update02.c 2010-04-29 21:01:27 UTC (rev 62)
+++ test/cmpi/test-update02.c 2010-04-29 21:42:41 UTC (rev 63)
@@ -22,14 +22,19 @@
sprintf(value, "value1");
cmpi_update(key1, value, strlen(value)+1, 0);
+ sleep(1);
sprintf(value, "value2");
cmpi_update(key2, value, strlen(value)+1, 0);
+ sleep(1);
sprintf(value, "X");
cmpi_update(key2, value, strlen(value)+1, 3);
+ sleep(1);
sprintf(value, "value3");
cmpi_update(key3, value, strlen(value)+1, 0);
+ sleep(1);
sprintf(value, "X");
cmpi_update(key3, value, strlen(value)+1, 1);
+ sleep(1);
sprintf(value, "value1");
cmpi_update(key3, value, strlen(value)+1, 3);
@@ -41,8 +46,10 @@
int length;
cmpi_get(key1, &result, &length);
printf("RESULT_1: %s\n", result);
+ sleep(1);
cmpi_get(key2, &result, &length);
printf("RESULT_2: %s\n", result);
+ sleep(1);
cmpi_get(key3, &result, &length);
printf("RESULT_3: %s\n", result);
NOTE("GET SUCCEEDED");
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|