Program: 131882
Project: 131882
Buggy source:
private OrientEdge createEdge(final OrientVertex vertex,final Object joinCurrentValue,Object result){
  log(OETLProcessor.LOG_LEVELS.DEBUG,"String_Node_Str",joinCurrentValue,result);
  if (result == null) {
switch (unresolvedLinkAction) {
case CREATE:
      if (lookup != null) {
        final String[] lookupParts=lookup.split("String_Node_Str");
        final OrientVertex linkedV=pipeline.getGraphDatabase().addTemporaryVertex(lookupParts[0]);
        linkedV.setProperty(lookupParts[1],joinCurrentValue);
        linkedV.save();
        log(OETLProcessor.LOG_LEVELS.DEBUG,"String_Node_Str",linkedV.getRecord());
        result=linkedV;
      }
 else       throw new OConfigurationException("String_Node_Str");
    break;
case ERROR:
  processor.getStats().incrementErrors();
log(OETLProcessor.LOG_LEVELS.ERROR,"String_Node_Str",getName(),joinCurrentValue);
break;
case WARNING:
processor.getStats().incrementWarnings();
log(OETLProcessor.LOG_LEVELS.INFO,"String_Node_Str",getName(),joinCurrentValue);
break;
case SKIP:
return null;
case HALT:
throw new OETLProcessHaltedException("String_Node_Str" + joinCurrentValue + "String_Node_Str");
}
}
if (result != null) {
final OrientVertex targetVertex=pipeline.getGraphDatabase().getVertex(result);
final OrientEdge edge;
if (directionOut) edge=(OrientEdge)vertex.addEdge(edgeClass,targetVertex);
 else edge=(OrientEdge)targetVertex.addEdge(edgeClass,vertex);
log(OETLProcessor.LOG_LEVELS.DEBUG,"String_Node_Str",edge);
return edge;
}
return null;
}

Fixed version (ground truth):
private OrientEdge createEdge(final OrientVertex vertex,final Object joinCurrentValue,Object result){
  log(OETLProcessor.LOG_LEVELS.DEBUG,"String_Node_Str",joinCurrentValue,result);
  if (result == null) {
switch (unresolvedLinkAction) {
case CREATE:
      if (lookup != null) {
        final String[] lookupParts=lookup.split("String_Node_Str");
        final OrientVertex linkedV=pipeline.getGraphDatabase().addTemporaryVertex(lookupParts[0]);
        linkedV.setProperty(lookupParts[1],joinCurrentValue);
        if (targetVertexFields != null) {
          for (          String f : targetVertexFields.fieldNames())           linkedV.setProperty(f,resolve(targetVertexFields.field(f)));
        }
        linkedV.save();
        log(OETLProcessor.LOG_LEVELS.DEBUG,"String_Node_Str",linkedV.getRecord());
        result=linkedV;
      }
 else       throw new OConfigurationException("String_Node_Str");
    break;
case ERROR:
  processor.getStats().incrementErrors();
log(OETLProcessor.LOG_LEVELS.ERROR,"String_Node_Str",getName(),joinCurrentValue);
break;
case WARNING:
processor.getStats().incrementWarnings();
log(OETLProcessor.LOG_LEVELS.INFO,"String_Node_Str",getName(),joinCurrentValue);
break;
case SKIP:
return null;
case HALT:
throw new OETLProcessHaltedException("String_Node_Str" + joinCurrentValue + "String_Node_Str");
}
}
if (result != null) {
final OrientVertex targetVertex=pipeline.getGraphDatabase().getVertex(result);
final OrientEdge edge;
if (directionOut) edge=(OrientEdge)vertex.addEdge(edgeClass,targetVertex);
 else edge=(OrientEdge)targetVertex.addEdge(edgeClass,vertex);
if (edgeFields != null) {
for (String f : edgeFields.fieldNames()) edge.setProperty(f,resolve(edgeFields.field(f)));
}
log(OETLProcessor.LOG_LEVELS.DEBUG,"String_Node_Str",edge);
return edge;
}
return null;
}