7466d1654758a960990796f5c049e09e475f7766
tdreszer
  Thu Dec 1 17:12:06 2011 -0800
More timing in hgFileUi and hgFileSearch led to important efficiency changes.  Most notable, I am relying upon cached rsync results now to improve speed.
diff --git src/hg/inc/mdb.h src/hg/inc/mdb.h
index e898392..84034d3 100644
--- src/hg/inc/mdb.h
+++ src/hg/inc/mdb.h
@@ -350,30 +350,33 @@
 void mdbObjReorderByCv(struct mdbObj *mdbObjs, boolean includeHidden);
 // Reorders vars list based upon cv.ra typeOfTerms priority
 
 void mdbObjsSortOnVars(struct mdbObj **mdbObjs, char *vars);
 // Sorts on var,val pairs vars lists: fwd case-sensitive.  Assumes all objs' vars are in identical order.
 // Optionally give list of vars "cell antibody treatment" to sort on (bringing to front of vars lists).
 
 void mdbObjsSortOnVarPairs(struct mdbObj **mdbObjs,struct slPair *varValPairs);
 // Sorts on var,val pairs vars lists: fwd case-sensitive.  Assumes all objs' vars are in identical order.
 // This method will use mdbObjsSortOnVars()
 
 void mdbObjsSortOnCv(struct mdbObj **mdbObjs, boolean includeHidden);
 // Puts obj->vars in order based upon cv.ra typeOfTerms priority,
 //  then case-sensitively sorts all objs in list based upon that var order.
 
+boolean mdbObjRemoveOneVar(struct mdbObj *mdbObj, char *var, char *val);
+// returns TRUE if var (and optional val) are found and surgically removed from one mdbObj
+
 void mdbObjRemoveVars(struct mdbObj *mdbObjs, char *vars);
 // Prunes list of vars for an object, freeing the memory.  Doesn't touch DB.
 
 void mdbObjRemoveHiddenVars(struct mdbObj *mdbObjs);
 // Prunes list of vars for mdb objs that have been declared as hidden in cv.ra typeOfTerms
 
 boolean mdbObjsHasCommonVar(struct mdbObj *mdbList, char *var, boolean missingOk);
 // Returns TRUE if all mbObjs passed in have the var with the same value
 
 char *mdbRemoveCommonVar(struct mdbObj *mdbList, char *var);
 // Removes var from set of mdbObjs but only if all that hav it have a commmon val
 // Returns the val if removed, else NULL
 
 boolean mdbObjSetVar(struct mdbObj *mdbObj, char *var,char *val);
 // Sets the string value to a single var in an obj, preparing for DB update.