Program: 89534
Project: 89534
Buggy source:
/** 
 * Insert WARC-archiver beans and remove placeholder for ARC-Archiver-beans It is an error, if the WARC place-holders doesnt't exist. It is not an error, if the property placeholder does not exist.
 */
private void setWarcArchiveformat(){
  String warcWriterbeanReference="String_Node_Str";
  String warcWriterProcessorBean="String_Node_Str";
  String propertyName="String_Node_Str";
  String valuePrefix="String_Node_Str";
  String valueSuffix="String_Node_Str";
  String propertyEnd="String_Node_Str";
  if (!template.contains(ARCHIVER_BEAN_REFERENCE_PLACEHOLDER)) {
    throw new IllegalState("String_Node_Str" + ARCHIVER_BEAN_REFERENCE_PLACEHOLDER + "String_Node_Str");
  }
  if (!template.contains(ARCHIVER_PROCESSOR_BEAN_PLACEHOLDER)) {
    throw new IllegalState("String_Node_Str" + ARCHIVER_PROCESSOR_BEAN_PLACEHOLDER + "String_Node_Str");
  }
  StringBuilder propertyBuilder=new StringBuilder();
  propertyBuilder.append(propertyName + "String_Node_Str" + valuePrefix+ Settings.get(HarvesterSettings.HERITRIX3_WARC_TEMPLATE)+ valueSuffix+ propertyEnd);
  propertyBuilder.append(propertyName + "String_Node_Str" + valuePrefix+ Settings.get(HarvesterSettings.HERITRIX3_WARC_COMPRESSION)+ valueSuffix+ propertyEnd);
  propertyBuilder.append(propertyName + "String_Node_Str" + valuePrefix+ ARCHIVE_FILE_PREFIX_PLACEHOLDER+ valueSuffix+ propertyEnd);
  propertyBuilder.append(propertyName + "String_Node_Str" + valuePrefix+ Settings.get(HarvesterSettings.HERITRIX3_WARC_MAXSIZE)+ valueSuffix+ propertyEnd);
  propertyBuilder.append(propertyName + "String_Node_Str" + valuePrefix+ Settings.get(HarvesterSettings.HERITRIX3_WARC_POOL_MAXACTIVE)+ valueSuffix+ propertyEnd);
  propertyBuilder.append(propertyName + "String_Node_Str" + valuePrefix+ Settings.get(HarvesterSettings.HERITRIX3_WARC_WRITE_REQUESTS)+ valueSuffix+ propertyEnd);
  propertyBuilder.append(propertyName + "String_Node_Str" + valuePrefix+ Settings.get(HarvesterSettings.HERITRIX3_WARC_WRITE_METADATA)+ valueSuffix+ propertyEnd);
  propertyBuilder.append(propertyName + "String_Node_Str" + valuePrefix+ Settings.get(HarvesterSettings.HERITRIX3_WARC_SKIP_IDENTICAL_DIGESTS)+ valueSuffix+ propertyEnd);
  propertyBuilder.append(propertyName + "String_Node_Str" + valuePrefix+ Settings.get(HarvesterSettings.HERITRIX3_WARC_START_NEW_FILES_ON_CHECKPOINT)+ valueSuffix+ propertyEnd);
  warcWriterProcessorBean+=propertyBuilder.toString();
  warcWriterProcessorBean+="String_Node_Str";
  String templateNew=template.replace(ARCHIVER_BEAN_REFERENCE_PLACEHOLDER,warcWriterbeanReference);
  this.template=templateNew.replace(ARCHIVER_PROCESSOR_BEAN_PLACEHOLDER,warcWriterProcessorBean);
}

Fixed version (ground truth):
/** 
 * Insert WARC-archiver beans and remove placeholder for ARC-Archiver-beans It is an error, if the WARC place-holders doesnt't exist. It is not an error, if the property placeholder does not exist.
 */
private void setWarcArchiveformat(){
  String warcWriterbeanReference="String_Node_Str";
  String warcWriterProcessorBean="String_Node_Str";
  String propertyName="String_Node_Str";
  String valuePrefix="String_Node_Str";
  String valueSuffix="String_Node_Str";
  String propertyEnd="String_Node_Str";
  if (!template.contains(ARCHIVER_BEAN_REFERENCE_PLACEHOLDER)) {
    throw new IllegalState("String_Node_Str" + ARCHIVER_BEAN_REFERENCE_PLACEHOLDER + "String_Node_Str");
  }
  if (!template.contains(ARCHIVER_PROCESSOR_BEAN_PLACEHOLDER)) {
    throw new IllegalState("String_Node_Str" + ARCHIVER_PROCESSOR_BEAN_PLACEHOLDER + "String_Node_Str");
  }
  StringBuilder propertyBuilder=new StringBuilder();
  propertyBuilder.append(propertyName + "String_Node_Str" + valuePrefix+ Settings.get(HarvesterSettings.HERITRIX3_WARC_TEMPLATE)+ valueSuffix+ propertyEnd);
  propertyBuilder.append(propertyName + "String_Node_Str" + valuePrefix+ Settings.get(HarvesterSettings.HERITRIX3_WARC_COMPRESSION)+ valueSuffix+ propertyEnd);
  propertyBuilder.append(propertyName + "String_Node_Str" + valuePrefix+ ARCHIVE_FILE_PREFIX_PLACEHOLDER+ valueSuffix+ propertyEnd);
  propertyBuilder.append(propertyName + "String_Node_Str" + valuePrefix+ Settings.get(HarvesterSettings.HERITRIX3_WARC_MAXSIZE)+ valueSuffix+ propertyEnd);
  propertyBuilder.append(propertyName + "String_Node_Str" + valuePrefix+ Settings.get(HarvesterSettings.HERITRIX3_WARC_POOL_MAXACTIVE)+ valueSuffix+ propertyEnd);
  propertyBuilder.append(propertyName + "String_Node_Str" + valuePrefix+ Settings.get(HarvesterSettings.HERITRIX3_WARC_WRITE_REQUESTS)+ valueSuffix+ propertyEnd);
  propertyBuilder.append(propertyName + "String_Node_Str" + valuePrefix+ Settings.get(HarvesterSettings.HERITRIX3_WARC_WRITE_METADATA)+ valueSuffix+ propertyEnd);
  propertyBuilder.append(propertyName + "String_Node_Str" + valuePrefix+ Settings.get(HarvesterSettings.HERITRIX3_WARC_WRITE_METADATA_OUTLINKS)+ valueSuffix+ propertyEnd);
  propertyBuilder.append(propertyName + "String_Node_Str" + valuePrefix+ Settings.get(HarvesterSettings.HERITRIX3_WARC_SKIP_IDENTICAL_DIGESTS)+ valueSuffix+ propertyEnd);
  propertyBuilder.append(propertyName + "String_Node_Str" + valuePrefix+ Settings.get(HarvesterSettings.HERITRIX3_WARC_START_NEW_FILES_ON_CHECKPOINT)+ valueSuffix+ propertyEnd);
  warcWriterProcessorBean+=propertyBuilder.toString();
  warcWriterProcessorBean+="String_Node_Str";
  String templateNew=template.replace(ARCHIVER_BEAN_REFERENCE_PLACEHOLDER,warcWriterbeanReference);
  this.template=templateNew.replace(ARCHIVER_PROCESSOR_BEAN_PLACEHOLDER,warcWriterProcessorBean);
}