code: func (sink *influxdbSink) parseRawQueryRow(rawRow influx_models.Row) ([]core.TimestampedMetricValue, error) {
  	vals := make([]core.TimestampedMetricValue, len(rawRow.Values))
  	wasInt := make(map[string]bool, 1)
  	for i, rawVal := range rawRow.Values {
  		val := core.TimestampedMetricValue{}
  
  		if ts, err := time.Parse(time.RFC3339, rawVal[0].(string)); err != nil {
  			return nil, fmt.Errorf("Unable to parse timestamp %q in series %q", rawVal[0].(string), rawRow.Name)
  		} else {
  			val.Timestamp = ts
  		}
  
  		if err := tryParseMetricValue("value", rawVal, &val.MetricValue, 1, wasInt); err != nil {
  			glog.Errorf("Unable to parse field \"value\" in series %q: %v", rawRow.Name, err)
  			return nil, fmt.Errorf("Unable to parse values in series %q", rawRow.Name)
  		}
  
  		vals[i] = val
  	}
  
  	if wasInt["value"] {
  		for i := range vals {
  			vals[i].MetricValue.ValueType = core.ValueInt64
  		}
  	} else {
  		for i := range vals {
  			vals[i].MetricValue.ValueType = core.ValueFloat
  		}
  	}
  
  	return vals, nil
  }
docs: // parseRawQueryRow parses a set of timestamped metric values from unstructured JSON output into the
  // appropriate Heapster form