[Pvfs2-cvs] commit by pcarns in pvfs2-1/src/io/trove/trove-dbpf: dbpf-keyval.c

CVS commit program cvs at parl.clemson.edu
Mon Feb 25 15:21:22 EST 2008


Update of /projects/cvsroot/pvfs2-1/src/io/trove/trove-dbpf
In directory parlweb1:/tmp/cvs-serv27774/src/io/trove/trove-dbpf

Modified Files:
      Tag: small-file-branch
	dbpf-keyval.c 
Log Message:
rearchitected get_handles() to make error handling more tenable and make it
possible to implement timeout/cancel.  There is some bug running around in
here that causes the handle_info counting to run amok, though.


Index: dbpf-keyval.c
===================================================================
RCS file: /projects/cvsroot/pvfs2-1/src/io/trove/trove-dbpf/dbpf-keyval.c,v
diff -p -u -r1.85.6.7 -r1.85.6.8
--- dbpf-keyval.c	25 Feb 2008 19:11:33 -0000	1.85.6.7
+++ dbpf-keyval.c	25 Feb 2008 20:21:21 -0000	1.85.6.8
@@ -715,6 +715,10 @@ static int dbpf_keyval_remove_list_op_sv
 
         info.count -= remove_count;
 
+        gossip_debug(GOSSIP_DBPF_KEYVAL_DEBUG,
+                 "[DBPF KEYVAL]: handle_info keyval_remove_list: handle: %llu, count: %d\n",
+                 llu(op_p->handle), info.count); 
+
         ret = op_p->coll_p->keyval_db->put(
             op_p->coll_p->keyval_db, NULL, &key, &data, 0);
         if(ret != 0)
@@ -1286,13 +1290,16 @@ static int dbpf_keyval_write_list_op_svc
             data.size = data.ulen = op_p->u.k_write_list.val_array[k].buffer_sz;
         }
 
-        gossip_debug(GOSSIP_DBPF_KEYVAL_DEBUG,
-                     "keyval_db->put(handle= %llu, key= %*s (%d)) size=%d\n",
-                     llu(key_entry.handle), 
-                     op_p->u.k_write_list.key_array[k].buffer_sz,
-                     key_entry.key,
-                     op_p->u.k_write_list.key_array[k].buffer_sz,
-                     key.size);
+        if(!(op_p->flags & TROVE_BINARY_KEY))
+        {
+            gossip_debug(GOSSIP_DBPF_KEYVAL_DEBUG,
+                         "keyval_db->put(handle= %llu, key= %*s (%d)) size=%d\n",
+                         llu(key_entry.handle), 
+                         op_p->u.k_write_list.key_array[k].buffer_sz,
+                         key_entry.key,
+                         op_p->u.k_write_list.key_array[k].buffer_sz,
+                         key.size);
+        }
 
         ret = op_p->coll_p->keyval_db->put(
             op_p->coll_p->keyval_db, NULL, &key, &data, 0);
@@ -1996,6 +2003,13 @@ static int dbpf_keyval_handle_info_ops(s
         }
         else if(action == DBPF_KEYVAL_HANDLE_COUNT_DECREMENT)
         {
+            if(info.count <= 0)
+            {
+                gossip_lerr(
+                     "[DBPF KEYVAL]: ERROR: handle_info "
+                     "count decrement: handle: %llu, value: %d\n",
+                     llu(op_p->handle), info.count);
+            }
             assert(info.count > 0);
 
             gossip_debug(GOSSIP_DBPF_KEYVAL_DEBUG,



More information about the Pvfs2-cvs mailing list