whole_func_string: function(datasetClientId, fields, callback) {
        fields.id = datasetClientId;
        return metrics.timeAsyncFunc(metrics.KEYS.MONGODB_OPERATION_TIME, doUpdateDatasetClient)(datasetClientId, fields, true, callback);
      }
func_code_string: function(datasetClientId, fields, callback) {
        fields.id = datasetClientId;
        return metrics.timeAsyncFunc(metrics.KEYS.MONGODB_OPERATION_TIME, doUpdateDatasetClient)(datasetClientId, fields, true, callback);
      }
func_documentation_string: Create the give dataset if it doesn't no exist, or update the existing one.
  Should return the datasetClient instance in the callback
  @param {String} datasetClientId the id of the datasetClient
  @param {storage~DatasetClient} fields the fields to upsert
  @param {Function} callback