Program: 87528
Project: 87528
Buggy source:
private List<JSONObject> grabReviews(List<JSONObject> models){
  List<JSONObject> reviews=new ArrayList<JSONObject>();
  log.info("String_Node_Str");
  for (  JSONObject model : models) {
    try {
      long modelId=model.getLong(JSONKeys.ID.getKey());
      Map<String,String> parameters=new HashMap<String,String>();
      parameters.put(RequestParams.COUNT.getKey(),COUNT_MAX_VALUE.toString());
      parameters.put(RequestParams.PAGE.getKey(),"String_Node_Str");
      OpinionRequestBuilder opinionRequestBuilder=new OpinionRequestBuilder();
      UrlRequest urlRequest=opinionRequestBuilder.requestForOpinionOnModelById(modelId,parameters);
      List<JSONObject> reviewsList=null;
      try {
        JSONObject mainObject=contentApiProvider.provide(urlRequest);
        reviewsList=JSONUtil.extractList(mainObject,JSONKeys.OPINION.getKey(),JSONKeys.MODEL_OPINIONS.getKey());
        setModelId(reviewsList,modelId);
        processEntityList(reviewsList);
        reviews.addAll(reviewsList);
        int opinionsCount=mainObject.getInt(JSONKeys.TOTAL.getKey());
        if (opinionsCount > COUNT_MAX_VALUE) {
          int pageCount=(opinionsCount / COUNT_MAX_VALUE) + 1;
          for (Integer pageNum=2; pageNum <= pageCount; pageNum++) {
            parameters=new HashMap<String,String>();
            parameters.put(RequestParams.COUNT.getKey(),COUNT_MAX_VALUE.toString());
            parameters.put(RequestParams.PAGE.getKey(),pageNum.toString());
            urlRequest=opinionRequestBuilder.requestForOpinionOnModelById(modelId,parameters);
            try {
              mainObject=contentApiProvider.provide(urlRequest);
              reviewsList=JSONUtil.extractList(mainObject,JSONKeys.OPINION.getKey(),JSONKeys.MODEL_OPINIONS.getKey());
              setModelId(reviewsList,modelId);
              processEntityList(reviewsList);
              reviews.addAll(reviewsList);
            }
 catch (            HTTPException e) {
              log.error("String_Node_Str" + e.getMessage());
            }
catch (            IOException e) {
              log.error("String_Node_Str" + "String_Node_Str" + "String_Node_Str"+ urlRequest.getUrl());
            }
catch (            JSONException e) {
              log.error("String_Node_Str" + "String_Node_Str" + urlRequest.getUrl(),e);
            }
          }
        }
        setOpinionsCount(model,opinionsCount);
      }
 catch (      HTTPException e) {
        log.error("String_Node_Str" + e.getMessage());
      }
catch (      IOException e) {
        log.error("String_Node_Str" + "String_Node_Str" + "String_Node_Str"+ urlRequest.getUrl());
      }
catch (      JSONException e) {
        log.error("String_Node_Str" + "String_Node_Str" + urlRequest.getUrl(),e);
      }
    }
 catch (    JSONException e) {
      log.error("String_Node_Str",e);
    }
  }
  log.info("String_Node_Str");
  log.info("String_Node_Str");
  update(models);
  log.info("String_Node_Str");
  return reviews;
}

Fixed version (ground truth):
private List<JSONObject> grabReviews(List<JSONObject> models){
  List<JSONObject> reviews=new ArrayList<JSONObject>();
  log.info("String_Node_Str");
  for (  JSONObject model : models) {
    try {
      long modelId=model.getLong(JSONKeys.ID.getKey());
      Map<String,String> parameters=new HashMap<String,String>();
      parameters.put(RequestParams.COUNT.getKey(),COUNT_MAX_VALUE.toString());
      parameters.put(RequestParams.PAGE.getKey(),"String_Node_Str");
      OpinionRequestBuilder opinionRequestBuilder=new OpinionRequestBuilder();
      UrlRequest urlRequest=opinionRequestBuilder.requestForOpinionOnModelById(modelId,parameters);
      List<JSONObject> reviewsList=null;
      try {
        JSONObject mainObject=contentApiProvider.provide(urlRequest);
        reviewsList=JSONUtil.extractList(mainObject,JSONKeys.OPINION.getKey(),JSONKeys.MODEL_OPINIONS.getKey());
        setModelId(reviewsList,modelId);
        processEntityList(reviewsList);
        reviews.addAll(reviewsList);
        int opinionsCount=mainObject.getInt(JSONKeys.TOTAL.getKey());
        if (opinionsCount > COUNT_MAX_VALUE) {
          int pageCount=(opinionsCount % COUNT_MAX_VALUE == 0) ? (opinionsCount / COUNT_MAX_VALUE) : (opinionsCount / COUNT_MAX_VALUE) + 1;
          for (Integer pageNum=2; pageNum <= pageCount; pageNum++) {
            parameters=new HashMap<String,String>();
            parameters.put(RequestParams.COUNT.getKey(),COUNT_MAX_VALUE.toString());
            parameters.put(RequestParams.PAGE.getKey(),pageNum.toString());
            urlRequest=opinionRequestBuilder.requestForOpinionOnModelById(modelId,parameters);
            try {
              mainObject=contentApiProvider.provide(urlRequest);
              reviewsList=JSONUtil.extractList(mainObject,JSONKeys.OPINION.getKey(),JSONKeys.MODEL_OPINIONS.getKey());
              setModelId(reviewsList,modelId);
              processEntityList(reviewsList);
              reviews.addAll(reviewsList);
            }
 catch (            HTTPException e) {
              log.error("String_Node_Str" + e.getMessage());
            }
catch (            IOException e) {
              log.error("String_Node_Str" + "String_Node_Str" + "String_Node_Str"+ urlRequest.getUrl());
            }
catch (            JSONException e) {
              log.error("String_Node_Str" + "String_Node_Str" + urlRequest.getUrl(),e);
            }
          }
        }
        setOpinionsCount(model,opinionsCount);
      }
 catch (      HTTPException e) {
        log.error("String_Node_Str" + e.getMessage());
      }
catch (      IOException e) {
        log.error("String_Node_Str" + "String_Node_Str" + "String_Node_Str"+ urlRequest.getUrl());
      }
catch (      JSONException e) {
        log.error("String_Node_Str" + "String_Node_Str" + urlRequest.getUrl(),e);
      }
    }
 catch (    JSONException e) {
      log.error("String_Node_Str",e);
    }
  }
  log.info("String_Node_Str");
  log.info("String_Node_Str");
  update(models);
  log.info("String_Node_Str");
  return reviews;
}