Program: 132228
Project: 132228
Buggy source:
public void createServiceFunctionForwarders(ServiceFunctionChains serviceFunctionchains){
  LOG.info("String_Node_Str",Thread.currentThread().getStackTrace()[1]);
  InstanceIdentifier<ServiceFunctionForwarders> sffIID;
  ServiceFunctionForwardersBuilder serviceFunctionForwardersBuilder=new ServiceFunctionForwardersBuilder();
  sffIID=InstanceIdentifier.builder(ServiceFunctionForwarders.class).build();
  ArrayList<ServiceFunctionForwarder> serviceFunctionForwarderList=new ArrayList<>();
  List<ServiceFunctionChain> serviceFunctionChainList=serviceFunctionchains.getServiceFunctionChain();
  for (  ServiceFunctionChain serviceFunctionChain : serviceFunctionChainList) {
    List<SfcServiceFunction> sfcServiceFunctionList=serviceFunctionChain.getSfcServiceFunction();
    for (    SfcServiceFunction sfcServiceFunction : sfcServiceFunctionList) {
      ServiceFunction serviceFunction=SfcProviderServiceFunctionAPI.readServiceFunction(sfcServiceFunction.getName());
      ServiceFunctionForwarderKey serviceFunctionForwarderKey=new ServiceFunctionForwarderKey(serviceFunction.getServiceFunctionForwarder());
      ServiceFunctionForwarderBuilder serviceFunctionForwarderBuilder=new ServiceFunctionForwarderBuilder();
      serviceFunctionForwarderBuilder.setName(serviceFunction.getServiceFunctionForwarder());
      serviceFunctionForwarderBuilder.setKey(serviceFunctionForwarderKey);
      ArrayList<ServiceFunctionDictionary> serviceFunctionDictionaryList=new ArrayList<>();
      ServiceFunctionDictionaryBuilder serviceFunctionDictionaryBuilder=new ServiceFunctionDictionaryBuilder();
      serviceFunctionDictionaryBuilder.setName(serviceFunction.getName()).setType(serviceFunction.getType()).setServiceFunctionForwarder(serviceFunction.getServiceFunctionForwarder()).setSfDataPlaneLocator(serviceFunction.getSfDataPlaneLocator());
      serviceFunctionDictionaryList.add(serviceFunctionDictionaryBuilder.build());
      serviceFunctionForwarderBuilder.setServiceFunctionDictionary(serviceFunctionDictionaryList);
      serviceFunctionForwarderList.add(serviceFunctionForwarderBuilder.build());
      LOG.info("String_Node_Str",serviceFunction.getServiceFunctionForwarder(),serviceFunction.getName());
      final DataModificationTransaction t=odlSfc.dataProvider.beginTransaction();
      t.putConfigurationData(sffIID,serviceFunctionForwarderBuilder.build());
      try {
        t.commit().get();
      }
 catch (      ExecutionException|InterruptedException e) {
        LOG.warn("String_Node_Str",e);
      }
    }
  }
  LOG.info("String_Node_Str",Thread.currentThread().getStackTrace()[1]);
}

Fixed version (ground truth):
public void createServiceFunctionForwarders(ServiceFunctionChains serviceFunctionchains){
  LOG.debug("String_Node_Str",Thread.currentThread().getStackTrace()[1]);
  InstanceIdentifier<ServiceFunctionForwarders> sffIID;
  ServiceFunctionForwardersBuilder serviceFunctionForwardersBuilder=new ServiceFunctionForwardersBuilder();
  sffIID=InstanceIdentifier.builder(ServiceFunctionForwarders.class).build();
  ArrayList<ServiceFunctionForwarder> serviceFunctionForwarderList=new ArrayList<>();
  List<ServiceFunctionChain> serviceFunctionChainList=serviceFunctionchains.getServiceFunctionChain();
  for (  ServiceFunctionChain serviceFunctionChain : serviceFunctionChainList) {
    List<SfcServiceFunction> sfcServiceFunctionList=serviceFunctionChain.getSfcServiceFunction();
    for (    SfcServiceFunction sfcServiceFunction : sfcServiceFunctionList) {
      ServiceFunction serviceFunction=SfcProviderServiceFunctionAPI.readServiceFunction(sfcServiceFunction.getName());
      ServiceFunctionForwarderKey serviceFunctionForwarderKey=new ServiceFunctionForwarderKey(serviceFunction.getServiceFunctionForwarder());
      ServiceFunctionForwarderBuilder serviceFunctionForwarderBuilder=new ServiceFunctionForwarderBuilder();
      serviceFunctionForwarderBuilder.setName(serviceFunction.getServiceFunctionForwarder());
      serviceFunctionForwarderBuilder.setKey(serviceFunctionForwarderKey);
      ArrayList<ServiceFunctionDictionary> serviceFunctionDictionaryList=new ArrayList<>();
      ServiceFunctionDictionaryBuilder serviceFunctionDictionaryBuilder=new ServiceFunctionDictionaryBuilder();
      serviceFunctionDictionaryBuilder.setName(serviceFunction.getName()).setType(serviceFunction.getType()).setServiceFunctionForwarder(serviceFunction.getServiceFunctionForwarder()).setSfDataPlaneLocator(serviceFunction.getSfDataPlaneLocator());
      serviceFunctionDictionaryList.add(serviceFunctionDictionaryBuilder.build());
      serviceFunctionForwarderBuilder.setServiceFunctionDictionary(serviceFunctionDictionaryList);
      serviceFunctionForwarderList.add(serviceFunctionForwarderBuilder.build());
      LOG.debug("String_Node_Str",serviceFunction.getServiceFunctionForwarder(),serviceFunction.getName());
      final DataModificationTransaction t=odlSfc.dataProvider.beginTransaction();
      t.putConfigurationData(sffIID,serviceFunctionForwarderBuilder.build());
      try {
        t.commit().get();
      }
 catch (      ExecutionException|InterruptedException e) {
        LOG.warn("String_Node_Str",e);
      }
    }
  }
  LOG.debug("String_Node_Str",Thread.currentThread().getStackTrace()[1]);
}