Program: 18542
Project: 18542
Buggy source:
/** 
 * {@inheritDoc}
 */
@Override public Map<String,List<MetricValue<?>>> findMetricValuesByOperation(String metricName,long begin,long end,boolean serverSide,int aggregationPeriod,Map<String,List<String>> filters) throws ServiceException {
  Map<String,List<MetricValue<?>>> result=new HashMap<String,List<MetricValue<?>>>();
  List<String> serviceAdminNames=filters.get("String_Node_Str");
  List<String> operationNames=filters.get("String_Node_Str");
  List<String> consumerNames=filters.get("String_Node_Str");
  String serviceName=serviceAdminNames.get(0);
  for (  String operation : operationNames) {
    Set<String> metricValuesToGet=new HashSet<String>();
    SliceQuery<String,Long,String> q=HFactory.createSliceQuery(keySpace,StringSerializer.get(),LongSerializer.get(),StringSerializer.get());
    q.setColumnFamily("String_Node_Str");
    String metricTimeSeriesKey=createMetricTimeSeriesKey(metricName,serviceName,operation,aggregationPeriod,serverSide);
    q.setKey(metricTimeSeriesKey);
    q.setRange(begin,end,false,100000000);
    QueryResult<ColumnSlice<Long,String>> r=q.execute();
    ColumnSlice<Long,String> columnSlice=r.get();
    for (    HColumn<Long,String> column : columnSlice.getColumns()) {
      if (column.getValue() != null && column.getValue().contains(metricName)) {
        metricValuesToGet.add(column.getValue());
      }
    }
    System.out.printf("String_Node_Str" + metricValuesToGet + "String_Node_Str",metricName,begin,end,serverSide,aggregationPeriod,metricTimeSeriesKey);
    List<MetricValue<?>> metricValues=this.findByKeys(metricValuesToGet);
    result.put(operation,metricValues);
  }
  return result;
}

Fixed version (ground truth):
/** 
 * {@inheritDoc}
 */
@Override public Map<String,List<MetricValue<?>>> findMetricValuesByOperation(List<String> ipAddressList,String metricName,long begin,long end,boolean serverSide,int aggregationPeriod,Map<String,List<String>> filters) throws ServiceException {
  Map<String,List<MetricValue<?>>> result=new HashMap<String,List<MetricValue<?>>>();
  List<String> serviceAdminNames=filters.get("String_Node_Str");
  List<String> operationNames=filters.get("String_Node_Str");
  List<String> consumerNames=filters.get("String_Node_Str");
  String serviceName=serviceAdminNames.get(0);
  Map<Long,MetricValue<?>> metricValuesByTime=new TreeMap<Long,MetricValue<?>>();
  for (  String operation : operationNames) {
    for (    String ipAddress : ipAddressList) {
      Set<String> metricValuesToGet=new HashSet<String>();
      SliceQuery<String,Long,String> q=HFactory.createSliceQuery(keySpace,StringSerializer.get(),LongSerializer.get(),StringSerializer.get());
      q.setColumnFamily("String_Node_Str");
      String metricTimeSeriesKey=createMetricTimeSeriesKey(ipAddress,metricName,serviceName,operation,aggregationPeriod,serverSide);
      q.setKey(metricTimeSeriesKey);
      q.setRange(begin,end,false,100000000);
      QueryResult<ColumnSlice<Long,String>> r=q.execute();
      ColumnSlice<Long,String> columnSlice=r.get();
      for (      HColumn<Long,String> column : columnSlice.getColumns()) {
        if (column.getValue() != null && column.getValue().contains(metricName)) {
          metricValuesToGet.add(column.getValue());
        }
      }
      System.out.printf("String_Node_Str" + metricValuesToGet + "String_Node_Str",metricName,begin,end,serverSide,aggregationPeriod,metricTimeSeriesKey);
      List<MetricValue<?>> metricValues=this.findByKeys(metricValuesToGet);
      for (      MetricValue<?> metricValue : metricValues) {
        metricValuesByTime.put(metricValue.getTimeMiliseconds(),metricValue);
      }
    }
    List<MetricValue<?>> theList=new ArrayList<MetricValue<?>>();
    theList.addAll(metricValuesByTime.values());
    result.put(operation,theList);
  }
  return result;
}