Program: 124745
Project: 124745
Buggy source:
/** 
 * DOC bchen Comment method "init".
 */
private void init(){
  confs=new HashMap<>();
  InputStreamDataSource clientConfig=null;
  try {
    clientConfig=cluster.getClientConfig(serviceName);
  }
 catch (  BadRequestException e) {
  }
  if (clientConfig == null) {
    return;
  }
  File directory=new File(System.getProperty("String_Node_Str"),"String_Node_Str" + serviceName + String.valueOf(new Date().getTime())+ Thread.currentThread().getId());
  try {
    ZipInputStream zipInputStream=new ZipInputStream(clientConfig.getInputStream());
    ZipEntry configInputZipEntry=null;
    while ((configInputZipEntry=zipInputStream.getNextEntry()) != null) {
      String configFile=configInputZipEntry.getName();
      if (configFile.contains("String_Node_Str")) {
        configFile=configFile.substring(configFile.lastIndexOf("String_Node_Str") + 1,configFile.length());
      }
      if (!configFile.endsWith(SUPPORT_FILE)) {
        continue;
      }
      directory.mkdirs();
      File file=new File(directory,configFile);
      BufferedWriter configOutput=null;
      try {
        int read;
        configOutput=new BufferedWriter(new FileWriter(file));
        while (zipInputStream.available() > 0) {
          if ((read=zipInputStream.read()) != -1) {
            configOutput.write(read);
          }
        }
      }
  finally {
        if (configOutput != null) {
          configOutput.close();
        }
      }
      Configuration conf=new Configuration(false);
      conf.addResource(new Path(file.toURI()));
      confs.put(configFile,conf);
    }
  }
 catch (  IOException e) {
    e.printStackTrace();
  }
}

Fixed version (ground truth):
/** 
 * DOC bchen Comment method "init".
 */
private void init(List<String> blacklistParams){
  confs=new HashMap<>();
  InputStreamDataSource clientConfig=null;
  try {
    clientConfig=cluster.getClientConfig(serviceName);
  }
 catch (  BadRequestException e) {
  }
  if (clientConfig == null) {
    return;
  }
  File directory=new File(System.getProperty("String_Node_Str"),"String_Node_Str" + serviceName + String.valueOf(new Date().getTime())+ Thread.currentThread().getId());
  try {
    ZipInputStream zipInputStream=new ZipInputStream(clientConfig.getInputStream());
    ZipEntry configInputZipEntry=null;
    while ((configInputZipEntry=zipInputStream.getNextEntry()) != null) {
      String configFile=configInputZipEntry.getName();
      if (configFile.contains("String_Node_Str")) {
        configFile=configFile.substring(configFile.lastIndexOf("String_Node_Str") + 1,configFile.length());
      }
      if (!configFile.endsWith(SUPPORT_FILE)) {
        continue;
      }
      directory.mkdirs();
      File file=new File(directory,configFile);
      BufferedWriter configOutput=null;
      try {
        int read;
        configOutput=new BufferedWriter(new FileWriter(file));
        while (zipInputStream.available() > 0) {
          if ((read=zipInputStream.read()) != -1) {
            configOutput.write(read);
          }
        }
      }
  finally {
        if (configOutput != null) {
          configOutput.close();
        }
      }
      Configuration conf=new Configuration(false);
      conf.addResource(new Path(file.toURI()));
      if (blacklistParams != null && blacklistParams.size() > 0) {
        Configuration filteredConf=new Configuration(false);
        Iterator<Entry<String,String>> iterator=conf.iterator();
        while (iterator.hasNext()) {
          Entry<String,String> next=iterator.next();
          if (blacklistParams.contains(next.getKey())) {
            continue;
          }
          filteredConf.set(next.getKey(),next.getValue());
        }
        conf=filteredConf;
      }
      confs.put(configFile,conf);
    }
  }
 catch (  IOException e) {
    e.printStackTrace();
  }
}