[PVFS2-CVS]
commit by neill in pvfs2/src/io/trove/trove-dbpf: dbpf-mgmt.c
dbpf-op.h dbpf-thread.c dbpf.h
CVS commit program
cvs at parl.clemson.edu
Wed Feb 18 12:38:29 EST 2004
Update of /projects/cvsroot/pvfs2/src/io/trove/trove-dbpf
In directory parlweb:/tmp/cvs-serv8355/src/io/trove/trove-dbpf
Modified Files:
dbpf-mgmt.c dbpf-op.h dbpf-thread.c dbpf.h
Log Message:
- added some debugging to get an idea of how the trove metadata syncs are
affecting us
- enforced the trove_sync_mode flag in a few more places, but being careful
to sync some operations that *must* be sync'd
- some cleanups
Index: dbpf-mgmt.c
===================================================================
RCS file: /projects/cvsroot/pvfs2/src/io/trove/trove-dbpf/dbpf-mgmt.c,v
diff -p -u -r1.36 -r1.37
--- dbpf-mgmt.c 30 Jan 2004 20:12:13 -0000 1.36
+++ dbpf-mgmt.c 18 Feb 2004 17:38:28 -0000 1.37
@@ -1300,6 +1300,55 @@ struct TROVE_mgmt_ops dbpf_mgmt_ops =
dbpf_collection_geteattr
};
+typedef struct
+{
+ enum dbpf_op_type op_type;
+ char op_type_str[32];
+} __dbpf_op_type_str_map_t;
+
+static __dbpf_op_type_str_map_t s_dbpf_op_type_str_map[] =
+{
+ { BSTREAM_READ_AT, "BSTREAM_READ_AT" },
+ { BSTREAM_WRITE_AT, "BSTREAM_WRITE_AT" },
+ { BSTREAM_RESIZE, "BSTREAM_RESIZE" },
+ { BSTREAM_READ_LIST, "BSTREAM_READ_LIST" },
+ { BSTREAM_WRITE_LIST, "BSTREAM_WRITE_LIST" },
+ { BSTREAM_VALIDATE, "BSTREAM_VALIDATE" },
+ { BSTREAM_FLUSH, "BSTREAM_FLUSH" },
+ { KEYVAL_READ, "KEYVAL_READ" },
+ { KEYVAL_WRITE, "KEYVAL_WRITE" },
+ { KEYVAL_REMOVE_KEY, "KEYVAL_REMOVE_KEY" },
+ { KEYVAL_VALIDATE, "KEYVAL_VALIDATE" },
+ { KEYVAL_ITERATE, "KEYVAL_ITERATE" },
+ { KEYVAL_ITERATE_KEYS, "KEYVAL_ITERATE_KEYS" },
+ { KEYVAL_READ_LIST, "KEYVAL_READ_LIST" },
+ { KEYVAL_WRITE_LIST, "KEYVAL_WRITE_LIST" },
+ { KEYVAL_FLUSH, "KEYVAL_FLUSH" },
+ { DSPACE_CREATE, "DSPACE_CREATE" },
+ { DSPACE_REMOVE, "DSPACE_REMOVE" },
+ { DSPACE_ITERATE_HANDLES, "DSPACE_ITERATE_HANDLES" },
+ { DSPACE_VERIFY, "DSPACE_VERIFY" },
+ { DSPACE_GETATTR, "DSPACE_GETATTR" },
+ { DSPACE_SETATTR, "DSPACE_SETATTR" }
+};
+
+char *dbpf_op_type_to_str(enum dbpf_op_type op_type)
+{
+ int i = 0;
+ char *ret = NULL;
+ int num_elems = (sizeof(s_dbpf_op_type_str_map) /
+ sizeof(__dbpf_op_type_str_map_t));
+
+ for(i = 0; i < num_elems; i++)
+ {
+ if (op_type == s_dbpf_op_type_str_map[i].op_type)
+ {
+ ret = s_dbpf_op_type_str_map[i].op_type_str;
+ break;
+ }
+ }
+ return ret;
+}
/*
* Local variables:
Index: dbpf-op.h
===================================================================
RCS file: /projects/cvsroot/pvfs2/src/io/trove/trove-dbpf/dbpf-op.h,v
diff -p -u -r1.2 -r1.3
--- dbpf-op.h 18 Jul 2003 16:51:19 -0000 1.2
+++ dbpf-op.h 18 Feb 2004 17:38:28 -0000 1.3
@@ -66,7 +66,6 @@ void dbpf_queued_op_free(
void dbpf_queued_op_touch(
dbpf_queued_op_t *q_op_p);
-
#if defined(__cplusplus)
}
#endif
Index: dbpf-thread.c
===================================================================
RCS file: /projects/cvsroot/pvfs2/src/io/trove/trove-dbpf/dbpf-thread.c,v
diff -p -u -r1.19 -r1.20
--- dbpf-thread.c 2 Feb 2004 22:50:25 -0000 1.19
+++ dbpf-thread.c 18 Feb 2004 17:38:28 -0000 1.20
@@ -173,9 +173,15 @@ int dbpf_do_one_work_cycle(int *out_coun
{
return ret;
}
-
+
/* otherwise, service the current operation now */
+ gossip_debug(GOSSIP_TROVE_DEBUG,"***** STARTING TROVE "
+ "SERVICE ROUTINE (%s) *****\n",
+ dbpf_op_type_to_str(cur_op->op.type));
ret = cur_op->op.svc_fn(&(cur_op->op));
+ gossip_debug(GOSSIP_TROVE_DEBUG,"***** FINISHED TROVE "
+ "SERVICE ROUTINE (%s) *****\n",
+ dbpf_op_type_to_str(cur_op->op.type));
if (ret != 0)
{
/* operation is done and we are telling the caller;
Index: dbpf.h
===================================================================
RCS file: /projects/cvsroot/pvfs2/src/io/trove/trove-dbpf/dbpf.h,v
diff -p -u -r1.34 -r1.35
--- dbpf.h 4 Feb 2004 00:35:27 -0000 1.34
+++ dbpf.h 18 Feb 2004 17:38:28 -0000 1.35
@@ -304,6 +304,12 @@ enum dbpf_op_type
DSPACE_SETATTR
};
+/*
+ a function useful for debugging that returns a human readable
+ op_type name given an op_type; returns NULL if no match is found
+*/
+char *dbpf_op_type_to_str(enum dbpf_op_type op_type);
+
enum dbpf_op_state
{
OP_UNITIALIZED = 0,
More information about the PVFS2-CVS
mailing list