docs: function setIndexInfo(name, origWhere, origSort) {
      origWhere = origWhere || {};
      origSort = origSort || {};
  
      // if _id in where, then don't do anything (no index value needed)
      if (origWhere._id) {
          return;
      }
  
      // we need to clean out values from inputs
      var whereNames = [], where = {}, whereSorted = {};
      _.each(origWhere, function (val, key) {
          whereNames.push(key);
          where[key] = 1;
      });
      _.each(whereNames.sort(), function (key) {
          whereSorted[key] = 1;
      });
  
      var sortNames = [], sort = {}, sortSorted = {};
      _.each(origSort, function (val, key) {
          sortNames.push(key);
          sort[key] = origSort[key];
      });
      _.each(sortNames.sort(), function (key) {
          sortSorted[key] = origSort[key];
      });
  
      var json = {
          name: name,
          where: where,
          sort: sort
      };
      var str = JSON.stringify(json);
      //var jsonSorted = {
      //    name: name,
      //    where: whereSorted,
      //    sort: sortSorted
      //};
      //var strSorted = JSON.stringify(jsonSorted);
  
      var query = cache.idxInfo[str] = cache.idxInfo[str] || {
          str: str,
          name: name,
          count: 0
      };
  
      query.count++;
  
      // if past the interval, then save the updates
      var now = (new Date()).getTime();
      if ((now - idxInfoLastSave) > idxInfoInterval) {
          idxInfoLastSave = now;
          saveIndexInfo();
      }
  }