Program: 64111
Project: 64111
Buggy source:
protected Descriptor buildDescriptor(PersistenceContext app,String persistenceUnit,ClassDescriptor descriptor,String baseUri){
  Descriptor returnDescriptor=new Descriptor();
  returnDescriptor.setName(descriptor.getAlias());
  returnDescriptor.setType(descriptor.getJavaClass().getSimpleName());
  returnDescriptor.getLinkTemplates().add(new LinkTemplate("String_Node_Str","String_Node_Str",baseUri + persistenceUnit + "String_Node_Str"+ descriptor.getAlias()+ "String_Node_Str"));
  returnDescriptor.getLinkTemplates().add(new LinkTemplate("String_Node_Str","String_Node_Str",baseUri + persistenceUnit + "String_Node_Str"+ descriptor.getAlias()));
  returnDescriptor.getLinkTemplates().add(new LinkTemplate("String_Node_Str","String_Node_Str",baseUri + persistenceUnit + "String_Node_Str"+ descriptor.getAlias()));
  returnDescriptor.getLinkTemplates().add(new LinkTemplate("String_Node_Str","String_Node_Str",baseUri + persistenceUnit + "String_Node_Str"+ descriptor.getAlias()+ "String_Node_Str"));
  if (!descriptor.getMappings().isEmpty()) {
    Iterator<DatabaseMapping> mappingIterator=descriptor.getMappings().iterator();
    while (mappingIterator.hasNext()) {
      DatabaseMapping mapping=mappingIterator.next();
      addMapping(returnDescriptor,mapping);
    }
  }
  addQueries(returnDescriptor.getQueries(),app,descriptor.getJavaClassName());
  return returnDescriptor;
}

Fixed version (ground truth):
protected Descriptor buildDescriptor(PersistenceContext app,String persistenceUnit,ClassDescriptor descriptor,String baseUri,String version){
  Descriptor returnDescriptor=new Descriptor();
  returnDescriptor.setName(descriptor.getAlias());
  returnDescriptor.setType(descriptor.getJavaClass().getSimpleName());
  if (version != null) {
    version=version + "String_Node_Str";
    returnDescriptor.getLinkTemplates().add(new LinkTemplate("String_Node_Str","String_Node_Str",baseUri + version + persistenceUnit+ "String_Node_Str"+ descriptor.getAlias()+ "String_Node_Str"));
    returnDescriptor.getLinkTemplates().add(new LinkTemplate("String_Node_Str","String_Node_Str",baseUri + version + persistenceUnit+ "String_Node_Str"+ descriptor.getAlias()));
    returnDescriptor.getLinkTemplates().add(new LinkTemplate("String_Node_Str","String_Node_Str",baseUri + version + persistenceUnit+ "String_Node_Str"+ descriptor.getAlias()));
    returnDescriptor.getLinkTemplates().add(new LinkTemplate("String_Node_Str","String_Node_Str",baseUri + version + persistenceUnit+ "String_Node_Str"+ descriptor.getAlias()+ "String_Node_Str"));
  }
 else {
    returnDescriptor.getLinkTemplates().add(new LinkTemplate("String_Node_Str","String_Node_Str",baseUri + persistenceUnit + "String_Node_Str"+ descriptor.getAlias()+ "String_Node_Str"));
    returnDescriptor.getLinkTemplates().add(new LinkTemplate("String_Node_Str","String_Node_Str",baseUri + persistenceUnit + "String_Node_Str"+ descriptor.getAlias()));
    returnDescriptor.getLinkTemplates().add(new LinkTemplate("String_Node_Str","String_Node_Str",baseUri + persistenceUnit + "String_Node_Str"+ descriptor.getAlias()));
    returnDescriptor.getLinkTemplates().add(new LinkTemplate("String_Node_Str","String_Node_Str",baseUri + persistenceUnit + "String_Node_Str"+ descriptor.getAlias()+ "String_Node_Str"));
  }
  if (!descriptor.getMappings().isEmpty()) {
    Iterator<DatabaseMapping> mappingIterator=descriptor.getMappings().iterator();
    while (mappingIterator.hasNext()) {
      DatabaseMapping mapping=mappingIterator.next();
      addMapping(returnDescriptor,mapping);
    }
  }
  addQueries(returnDescriptor.getQueries(),app,descriptor.getJavaClassName());
  return returnDescriptor;
}