Program: 94379
Project: 94379
Buggy source:
@Override public VectorDataProvider call() throws Exception {
  initialize(conf);
  final VectorDataProviderFactory factory=findFactory();
  if (accessMode == AccessMode.READ) {
    if (factory != null) {
      if (log.isDebugEnabled()) {
        log.debug("String_Node_Str" + name + "String_Node_Str"+ factory.getClass().getName());
      }
      if (factory.canOpen(name,props)) {
        if (log.isDebugEnabled()) {
          log.debug("String_Node_Str" + factory.getClass().getName() + "String_Node_Str"+ name);
        }
        return factory.createVectorDataProvider(prefix,name,props);
      }
 else {
        if (log.isInfoEnabled()) {
          log.info("String_Node_Str" + name + "String_Node_Str"+ factory.getClass().getName());
        }
      }
    }
 else {
      log.info("String_Node_Str" + name);
    }
    String msg="String_Node_Str" + name + "String_Node_Str"+ prefix;
    if (log.isDebugEnabled()) {
      log.debug(msg);
      log.debug("String_Node_Str" + vectorProviderFactories.size());
      for (      VectorDataProviderFactory f : vectorProviderFactories.values()) {
        log.debug(f.getPrefix() + "String_Node_Str" + f.getClass().getName());
      }
      String cp=System.getProperty("String_Node_Str");
      log.debug("String_Node_Str" + cp);
    }
    throw new DataProviderNotFound(msg);
  }
 else   if (accessMode == AccessMode.OVERWRITE) {
    if (factory != null) {
      if (factory.exists(name,props)) {
        factory.delete(name,props);
      }
      return factory.createVectorDataProvider(prefix,name,props);
    }
    return getPreferredProvider().createVectorDataProvider(prefix,name,props);
  }
 else {
    if (factory != null) {
      if (factory.canWrite(name,props)) {
        return factory.createVectorDataProvider(prefix,name,props);
      }
      String msg="String_Node_Str" + name + "String_Node_Str"+ prefix;
      if (log.isDebugEnabled()) {
        log.debug(msg);
        log.debug("String_Node_Str" + vectorProviderFactories.size());
        for (        VectorDataProviderFactory f : vectorProviderFactories.values()) {
          log.debug(f.getPrefix() + "String_Node_Str" + f.getClass().getName());
        }
        String cp=System.getProperty("String_Node_Str");
        log.debug("String_Node_Str" + cp);
      }
      throw new DataProviderNotFound(msg);
    }
    return getPreferredProvider().createVectorDataProvider(prefix,name,props);
  }
}

Fixed version (ground truth):
@Override public VectorDataProvider call() throws Exception {
  initialize(conf);
  final VectorDataProviderFactory factory=findFactory();
  if (accessMode == AccessMode.READ) {
    if (factory != null) {
      if (log.isDebugEnabled()) {
        log.debug("String_Node_Str" + name + "String_Node_Str"+ factory.getClass().getName());
      }
      if (factory.canOpen(name,conf,props)) {
        if (log.isDebugEnabled()) {
          log.debug("String_Node_Str" + factory.getClass().getName() + "String_Node_Str"+ name);
        }
        return factory.createVectorDataProvider(prefix,name,conf,props);
      }
 else {
        if (log.isInfoEnabled()) {
          log.info("String_Node_Str" + name + "String_Node_Str"+ factory.getClass().getName());
        }
      }
    }
 else {
      log.info("String_Node_Str" + name);
    }
    String msg="String_Node_Str" + name + "String_Node_Str"+ prefix;
    if (log.isDebugEnabled()) {
      log.debug(msg);
      log.debug("String_Node_Str" + vectorProviderFactories.size());
      for (      VectorDataProviderFactory f : vectorProviderFactories.values()) {
        log.debug(f.getPrefix() + "String_Node_Str" + f.getClass().getName());
      }
      String cp=System.getProperty("String_Node_Str");
      log.debug("String_Node_Str" + cp);
    }
    throw new DataProviderNotFound(msg);
  }
 else   if (accessMode == AccessMode.OVERWRITE) {
    if (factory != null) {
      if (factory.exists(name,conf,props)) {
        factory.delete(name,conf,props);
      }
      return factory.createVectorDataProvider(prefix,name,conf,props);
    }
    return getPreferredProvider().createVectorDataProvider(prefix,name,conf,props);
  }
 else {
    if (factory != null) {
      if (factory.canWrite(name,conf,props)) {
        return factory.createVectorDataProvider(prefix,name,conf,props);
      }
      String msg="String_Node_Str" + name + "String_Node_Str"+ prefix;
      if (log.isDebugEnabled()) {
        log.debug(msg);
        log.debug("String_Node_Str" + vectorProviderFactories.size());
        for (        VectorDataProviderFactory f : vectorProviderFactories.values()) {
          log.debug(f.getPrefix() + "String_Node_Str" + f.getClass().getName());
        }
        String cp=System.getProperty("String_Node_Str");
        log.debug("String_Node_Str" + cp);
      }
      throw new DataProviderNotFound(msg);
    }
    return getPreferredProvider().createVectorDataProvider(prefix,name,conf,props);
  }
}