Program: 141148
Project: 141148
Buggy source:
/** 
 * Create the JobConf object for a sample
 * @param readsData reads data
 * @param inputFormat inputFormat
 * @param fastqFormat FASTQ format
 * @param mapperIndexData mapper index data
 * @param outData output data
 * @return a new JobConf object
 * @throws IOException
 */
private Job createJobConf(final Configuration parentConf,final StepContext context,final String dataName,final DataFile readsFile,final boolean pairedEnd,final DataFormat inputFormat,final FastqFormat fastqFormat,final DataFile mapperIndexFile,final DataFile outFile) throws IOException {
  final Configuration jobConf=new Configuration(parentConf);
  final Path inputPath=new Path(readsFile.getSource());
  jobConf.set(ReadsMapperMapper.MAPPER_NAME_KEY,getMapperName());
  jobConf.set(ReadsMapperMapper.MAPPER_VERSION_KEY,getMapperVersion());
  jobConf.set(ReadsMapperMapper.MAPPER_FLAVOR_KEY,getMapperFlavor());
  jobConf.set(ReadsMapperMapper.PAIR_END_KEY,Boolean.toString(pairedEnd));
  if (getMapperLocalThreads() < 0) {
    jobConf.set(ReadsMapperMapper.MAPPER_THREADS_KEY,"String_Node_Str" + getMapperHadoopThreads());
  }
  if (getMapperArguments() != null) {
    jobConf.set(ReadsMapperMapper.MAPPER_ARGS_KEY,getMapperArguments());
  }
  jobConf.set(ReadsMapperMapper.FASTQ_FORMAT_KEY,"String_Node_Str" + fastqFormat);
  jobConf.set(ReadsMapperMapper.INDEX_CHECKSUM_KEY,"String_Node_Str" + computeZipCheckSum(mapperIndexFile,parentConf));
  jobConf.set(CommonHadoop.COUNTER_GROUP_KEY,COUNTER_GROUP);
  jobConf.set("String_Node_Str","String_Node_Str" + HADOOP_TIMEOUT);
  jobConf.set("String_Node_Str","String_Node_Str" + 1);
  jobConf.set("String_Node_Str","String_Node_Str" + getMapperHadoopMemoryRequired());
  setZooKeeperJobConfiguration(jobConf,context);
  final Job job=Job.getInstance(jobConf,"String_Node_Str" + fastqFormat + "String_Node_Str"+ getMapperName()+ "String_Node_Str"+ dataName+ "String_Node_Str"+ readsFile.getName()+ "String_Node_Str");
  final Path genomeIndex=new Path(mapperIndexFile.getSource());
  job.addCacheFile(genomeIndex.toUri());
  job.setJarByClass(ReadsMapperHadoopStep.class);
  FileInputFormat.addInputPath(job,inputPath);
  if (inputFormat == READS_FASTQ) {
    job.setInputFormatClass(FastqInputFormat.class);
  }
 else {
    job.setInputFormatClass(KeyValueTextInputFormat.class);
  }
  job.setMapperClass(ReadsMapperMapper.class);
  job.setOutputFormatClass(SAMOutputFormat.class);
  job.setOutputKeyClass(Text.class);
  job.setOutputValueClass(Text.class);
  job.setNumReduceTasks(0);
  FileOutputFormat.setOutputPath(job,new Path(outFile.getSource()));
  return job;
}

Fixed version (ground truth):
/** 
 * Create the JobConf object for a sample.
 * @param parentConf Hadoop configuration
 * @param dataName data name
 * @param readsFile reads file
 * @param inputFormat inputFormat
 * @param fastqFormat FASTQ format
 * @param mapperIndexFile mapper index file
 * @param outFile output file
 * @return a new JobConf object
 * @throws IOException if an error occurs while creating the job
 */
private Job createJobConf(final Configuration parentConf,final StepContext context,final String dataName,final DataFile readsFile,final boolean pairedEnd,final DataFormat inputFormat,final FastqFormat fastqFormat,final DataFile mapperIndexFile,final DataFile outFile) throws IOException {
  final Configuration jobConf=new Configuration(parentConf);
  final Path inputPath=new Path(readsFile.getSource());
  jobConf.set(ReadsMapperMapper.MAPPER_NAME_KEY,getMapperName());
  jobConf.set(ReadsMapperMapper.MAPPER_VERSION_KEY,getMapperVersion());
  jobConf.set(ReadsMapperMapper.MAPPER_FLAVOR_KEY,getMapperFlavor());
  jobConf.set(ReadsMapperMapper.PAIR_END_KEY,Boolean.toString(pairedEnd));
  if (getMapperLocalThreads() < 0) {
    jobConf.set(ReadsMapperMapper.MAPPER_THREADS_KEY,"String_Node_Str" + getMapperHadoopThreads());
  }
  if (getMapperArguments() != null) {
    jobConf.set(ReadsMapperMapper.MAPPER_ARGS_KEY,getMapperArguments());
  }
  jobConf.set(ReadsMapperMapper.FASTQ_FORMAT_KEY,"String_Node_Str" + fastqFormat);
  jobConf.set(ReadsMapperMapper.INDEX_CHECKSUM_KEY,"String_Node_Str" + computeZipCheckSum(mapperIndexFile,parentConf));
  jobConf.set(CommonHadoop.COUNTER_GROUP_KEY,COUNTER_GROUP);
  jobConf.set("String_Node_Str","String_Node_Str" + HADOOP_TIMEOUT);
  jobConf.set("String_Node_Str","String_Node_Str" + 1);
  jobConf.set("String_Node_Str","String_Node_Str" + getMapperHadoopMemoryRequired());
  setZooKeeperJobConfiguration(jobConf,context);
  final Job job=Job.getInstance(jobConf,"String_Node_Str" + fastqFormat + "String_Node_Str"+ getMapperName()+ "String_Node_Str"+ dataName+ "String_Node_Str"+ readsFile.getName()+ "String_Node_Str");
  final Path genomeIndex=new Path(mapperIndexFile.getSource());
  job.addCacheFile(genomeIndex.toUri());
  job.setJarByClass(ReadsMapperHadoopStep.class);
  FileInputFormat.addInputPath(job,inputPath);
  if (inputFormat == READS_FASTQ) {
    job.setInputFormatClass(FastqInputFormat.class);
  }
 else {
    job.setInputFormatClass(KeyValueTextInputFormat.class);
  }
  job.setMapperClass(ReadsMapperMapper.class);
  job.setOutputFormatClass(SAMOutputFormat.class);
  job.setOutputKeyClass(Text.class);
  job.setOutputValueClass(Text.class);
  job.setNumReduceTasks(0);
  FileOutputFormat.setOutputPath(job,new Path(outFile.getSource()));
  return job;
}