Program: 125632
Project: 125632
Buggy source:
public static List<Map<String,Object>> getHadoopPropertiesFullList(Connection connection,String propertiesJsonStr,ContextType clusterContextType,ContextType contextType,boolean includeQuotes){
  IHadoopClusterService hadoopClusterService=null;
  if (GlobalServiceRegister.getDefault().isServiceRegistered(IHadoopClusterService.class)) {
    hadoopClusterService=(IHadoopClusterService)GlobalServiceRegister.getDefault().getService(IHadoopClusterService.class);
  }
  List<Map<String,Object>> parentProperties=null;
  if (hadoopClusterService != null) {
    Connection hadoopClusterConnection=hadoopClusterService.getHadoopClusterConnectionBySubConnection(connection);
    if (hadoopClusterConnection != null) {
      parentProperties=getHadoopPropertiesWithOriginalValue(hadoopClusterService.getHadoopClusterProperties(connection),clusterContextType,includeQuotes);
    }
  }
  List<Map<String,Object>> properties=getHadoopPropertiesWithOriginalValue(propertiesJsonStr,contextType,includeQuotes);
  Map<String,Map<String,Object>> propertiesMap=new HashMap<String,Map<String,Object>>();
  for (  Map<String,Object> proMap : properties) {
    String property=String.valueOf(proMap.get("String_Node_Str"));
    propertiesMap.put(property,proMap);
  }
  if (parentProperties != null) {
    for (    Map<String,Object> parentProMap : parentProperties) {
      String property=String.valueOf(parentProMap.get("String_Node_Str"));
      if (!propertiesMap.containsKey(property)) {
        propertiesMap.put(property,parentProMap);
        properties.add(parentProMap);
      }
    }
  }
  return properties;
}

Fixed version (ground truth):
public static List<Map<String,Object>> getHadoopPropertiesFullList(Connection connection,String propertiesJsonStr,boolean includeQuotes,boolean useOriginalValue){
  IHadoopClusterService hadoopClusterService=null;
  if (GlobalServiceRegister.getDefault().isServiceRegistered(IHadoopClusterService.class)) {
    hadoopClusterService=(IHadoopClusterService)GlobalServiceRegister.getDefault().getService(IHadoopClusterService.class);
  }
  List<Map<String,Object>> parentProperties=null;
  if (hadoopClusterService != null) {
    Connection hadoopClusterConnection=hadoopClusterService.getHadoopClusterConnectionBySubConnection(connection);
    if (hadoopClusterConnection != null) {
      String hadoopClusterPropertiesStrs=hadoopClusterService.getHadoopClusterProperties(connection);
      parentProperties=getHadoopProperties(hadoopClusterConnection,hadoopClusterPropertiesStrs,includeQuotes,useOriginalValue);
    }
  }
  List<Map<String,Object>> properties=getHadoopProperties(connection,propertiesJsonStr,includeQuotes,useOriginalValue);
  Map<String,Map<String,Object>> propertiesMap=new HashMap<String,Map<String,Object>>();
  for (  Map<String,Object> proMap : properties) {
    String property=String.valueOf(proMap.get("String_Node_Str"));
    propertiesMap.put(property,proMap);
  }
  if (parentProperties != null) {
    for (    Map<String,Object> parentProMap : parentProperties) {
      String property=String.valueOf(parentProMap.get("String_Node_Str"));
      if (!propertiesMap.containsKey(property)) {
        propertiesMap.put(property,parentProMap);
        properties.add(parentProMap);
      }
    }
  }
  return properties;
}