Program: 37481
Project: 37481
Buggy source:
public void init() throws Exception {
  this.lock=new ReentrantLock();
  try {
    this.serverMap=ConfigLoader.loadServerMap(ConfigLoader.buidCfgAbsPathFor("String_Node_Str"));
    this.poolCfgMap=ConfigLoader.loadPoolMap(ConfigLoader.buidCfgAbsPathFor("String_Node_Str"));
    this.userMap=ConfigLoader.loadUserMap(poolCfgMap,ConfigLoader.buidCfgAbsPathFor("String_Node_Str"));
    this.mailProperty=ConfigLoader.loadMailProperties(ConfigLoader.buidCfgAbsPathFor("String_Node_Str"));
  }
 catch (  Exception e) {
    throw e;
  }
  String portString=this.serverMap.get("String_Node_Str");
  String reactorSizeString=this.serverMap.get("String_Node_Str");
  String minBufferSizeString=this.serverMap.get("String_Node_Str");
  String maxBufferSizeString=this.serverMap.get("String_Node_Str");
  String decomposeBufferSizeString=this.serverMap.get("String_Node_Str");
  String minChunkSizeString=this.serverMap.get("String_Node_Str");
  String incrementString=this.serverMap.get("String_Node_Str");
  String maxChunkSizeString=this.serverMap.get("String_Node_Str");
  String bufferLocalPercentString=this.serverMap.get("String_Node_Str");
  String bossSizeString=this.serverMap.get("String_Node_Str");
  String timerSizeString=this.serverMap.get("String_Node_Str");
  String networkFlowLimitSizeString=this.serverMap.get("String_Node_Str");
  int processors=Runtime.getRuntime().availableProcessors();
  int port=portString == null ? 8066 : Integer.parseInt(portString);
  int reactorSize=reactorSizeString == null ? processors : Integer.parseInt(reactorSizeString);
  long minBufferSize=minBufferSizeString == null ? 16384 * 1000 : Long.parseLong(minBufferSizeString);
  long maxBufferSize=maxBufferSizeString == null ? 16384 * 10000 : Long.parseLong(maxBufferSizeString);
  int decomposeBufferSize=decomposeBufferSizeString == null ? 64 * 1024 : Integer.parseInt(decomposeBufferSizeString);
  int minChunkSize=minChunkSizeString == null ? 0 : Integer.parseInt(minChunkSizeString);
  long networkFlowLimitSize=networkFlowLimitSizeString == null ? -1 : Long.parseLong(networkFlowLimitSizeString);
  this.flowMonitor=new NetFlowMonitor(networkFlowLimitSize);
  int[] increments=null;
  if (incrementString == null) {
    increments=new int[]{1024};
  }
 else {
    String[] incrementStrings=incrementString.split("String_Node_Str");
    if (incrementStrings == null || incrementStrings.length == 0) {
      increments=new int[]{1024};
    }
 else {
      increments=new int[incrementStrings.length];
      for (int i=0; i < incrementStrings.length; i++) {
        increments[i]=Integer.parseInt(incrementStrings[i]);
      }
    }
  }
  int maxChunkSize=maxChunkSizeString == null ? 64 * 1024 : Integer.parseInt(maxChunkSizeString);
  int bufferLocalPercent=bufferLocalPercentString == null ? 100 : Integer.parseInt(bufferLocalPercentString);
  int threadLocalPercent=bufferLocalPercent / reactorSize;
  int bossSize=bossSizeString == null ? 10 : Integer.parseInt(bossSizeString);
  int timerSize=timerSizeString == null ? 6 : Integer.parseInt(timerSizeString);
  this.bufferPool=new BucketBufferPool(minBufferSize,maxBufferSize,decomposeBufferSize,minChunkSize,increments,maxChunkSize,threadLocalPercent);
  this.virtualMemoryService=new VirtualMemoryService();
  this.virtualMemoryService.start();
  new NetSystem(bufferPool,ExecutorUtil.create("String_Node_Str",bossSize),ExecutorUtil.create("String_Node_Str",timerSize));
  String frontIdleTimeoutString=this.serverMap.get("String_Node_Str");
  String backendIdleTimeoutString=this.serverMap.get("String_Node_Str");
  int frontIdleTimeout=frontIdleTimeoutString == null ? 5 * 60 * 1000 : Integer.parseInt(frontIdleTimeoutString);
  int backendIdleTimeout=backendIdleTimeoutString == null ? 30 * 60 * 1000 : Integer.parseInt(backendIdleTimeoutString);
  SystemConfig systemConfig=new SystemConfig();
  systemConfig.setFrontIdleTimeout(frontIdleTimeout);
  systemConfig.setBackendIdleTimeout(backendIdleTimeout);
  NetSystem.getInstance().setNetConfig(systemConfig);
  System.out.println(String.format("String_Node_Str",processors,reactorSize,bossSize,timerSize,frontIdleTimeout,backendIdleTimeout));
  NIOReactorPool reactorPool=new NIOReactorPool(BufferPool.LOCAL_BUF_THREAD_PREX + "String_Node_Str",reactorSize);
  NIOReactor[] reactors=reactorPool.getAllReactors();
  for (  NIOReactor r : reactors) {
    this.reactorMap.put(r.getName(),r);
  }
  NIOConnector connector=new NIOConnector("String_Node_Str",reactorPool);
  connector.start();
  NetSystem.getInstance().setConnector(connector);
  boolean isKafkaPoolExist=false;
  this.poolMap=new HashMap<Integer,AbstractPool>(poolCfgMap.size());
  for (  final PoolCfg poolCfg : poolCfgMap.values()) {
    AbstractPool pool=PoolFactory.createPoolByCfg(poolCfg);
    pool.startup();
    this.poolMap.put(pool.getId(),pool);
    if (poolCfg instanceof KafkaPoolCfg) {
      isKafkaPoolExist=true;
    }
  }
  if (isKafkaPoolExist == true && !BrokerOffsetService.INSTANCE().isRunning()) {
    BrokerOffsetService.INSTANCE().start();
    Runtime.getRuntime().addShutdownHook(new Thread(){
      public void run(){
        BrokerOffsetService.INSTANCE().stop();
      }
    }
);
  }
  NIOAcceptor acceptor=new NIOAcceptor("String_Node_Str","String_Node_Str",port,new RedisFrontendConnectionFactory(),reactorPool);
  acceptor.start();
  LOGGER.info(acceptor.getName() + "String_Node_Str",acceptor.getPort());
  Iterator<String> it=userMap.keySet().iterator();
  String authString=it.hasNext() ? it.next() : "String_Node_Str";
  KeepAlived.check(port,authString);
}

Fixed version (ground truth):
public void init() throws Exception {
  this.lock=new ReentrantLock();
  try {
    this.serverMap=ConfigLoader.loadServerMap(ConfigLoader.buidCfgAbsPathFor("String_Node_Str"));
    this.poolCfgMap=ConfigLoader.loadPoolMap(ConfigLoader.buidCfgAbsPathFor("String_Node_Str"));
    this.userMap=ConfigLoader.loadUserMap(poolCfgMap,ConfigLoader.buidCfgAbsPathFor("String_Node_Str"));
    this.mailProperty=ConfigLoader.loadMailProperties(ConfigLoader.buidCfgAbsPathFor("String_Node_Str"));
  }
 catch (  Exception e) {
    throw e;
  }
  String portString=this.serverMap.get("String_Node_Str");
  String reactorSizeString=this.serverMap.get("String_Node_Str");
  String minBufferSizeString=this.serverMap.get("String_Node_Str");
  String maxBufferSizeString=this.serverMap.get("String_Node_Str");
  String decomposeBufferSizeString=this.serverMap.get("String_Node_Str");
  String minChunkSizeString=this.serverMap.get("String_Node_Str");
  String incrementString=this.serverMap.get("String_Node_Str");
  String maxChunkSizeString=this.serverMap.get("String_Node_Str");
  String bufferLocalPercentString=this.serverMap.get("String_Node_Str");
  String bossSizeString=this.serverMap.get("String_Node_Str");
  String timerSizeString=this.serverMap.get("String_Node_Str");
  String networkFlowLimitSizeString=this.serverMap.get("String_Node_Str");
  int port=portString == null ? 8066 : Integer.parseInt(portString);
  int processors=Runtime.getRuntime().availableProcessors();
  int reactorSize=reactorSizeString == null ? processors + 1 : Integer.parseInt(reactorSizeString);
  if (reactorSize > 9) {
    reactorSize=4 + (processors * 5 / 8);
  }
  long minBufferSize=minBufferSizeString == null ? 16384 * 1000 : Long.parseLong(minBufferSizeString);
  long maxBufferSize=maxBufferSizeString == null ? 16384 * 10000 : Long.parseLong(maxBufferSizeString);
  int decomposeBufferSize=decomposeBufferSizeString == null ? 64 * 1024 : Integer.parseInt(decomposeBufferSizeString);
  int minChunkSize=minChunkSizeString == null ? 0 : Integer.parseInt(minChunkSizeString);
  long networkFlowLimitSize=networkFlowLimitSizeString == null ? -1 : Long.parseLong(networkFlowLimitSizeString);
  this.flowMonitor=new NetFlowMonitor(networkFlowLimitSize);
  int[] increments=null;
  if (incrementString == null) {
    increments=new int[]{1024};
  }
 else {
    String[] incrementStrings=incrementString.split("String_Node_Str");
    if (incrementStrings == null || incrementStrings.length == 0) {
      increments=new int[]{1024};
    }
 else {
      increments=new int[incrementStrings.length];
      for (int i=0; i < incrementStrings.length; i++) {
        increments[i]=Integer.parseInt(incrementStrings[i]);
      }
    }
  }
  int maxChunkSize=maxChunkSizeString == null ? 64 * 1024 : Integer.parseInt(maxChunkSizeString);
  int bufferLocalPercent=bufferLocalPercentString == null ? 100 : Integer.parseInt(bufferLocalPercentString);
  int threadLocalPercent=bufferLocalPercent / reactorSize;
  int bossSize=bossSizeString == null ? 10 : Integer.parseInt(bossSizeString);
  int timerSize=timerSizeString == null ? 6 : Integer.parseInt(timerSizeString);
  this.bufferPool=new BucketBufferPool(minBufferSize,maxBufferSize,decomposeBufferSize,minChunkSize,increments,maxChunkSize,threadLocalPercent);
  this.virtualMemoryService=new VirtualMemoryService();
  this.virtualMemoryService.start();
  new NetSystem(bufferPool,ExecutorUtil.create("String_Node_Str",bossSize),ExecutorUtil.create("String_Node_Str",timerSize));
  String frontIdleTimeoutString=this.serverMap.get("String_Node_Str");
  String backendIdleTimeoutString=this.serverMap.get("String_Node_Str");
  int frontIdleTimeout=frontIdleTimeoutString == null ? 5 * 60 * 1000 : Integer.parseInt(frontIdleTimeoutString);
  int backendIdleTimeout=backendIdleTimeoutString == null ? 30 * 60 * 1000 : Integer.parseInt(backendIdleTimeoutString);
  SystemConfig systemConfig=new SystemConfig();
  systemConfig.setFrontIdleTimeout(frontIdleTimeout);
  systemConfig.setBackendIdleTimeout(backendIdleTimeout);
  NetSystem.getInstance().setNetConfig(systemConfig);
  System.out.println(String.format("String_Node_Str",processors,reactorSize,bossSize,timerSize,frontIdleTimeout,backendIdleTimeout));
  NIOReactorPool reactorPool=new NIOReactorPool(BufferPool.LOCAL_BUF_THREAD_PREX + "String_Node_Str",reactorSize);
  NIOReactor[] reactors=reactorPool.getAllReactors();
  for (  NIOReactor r : reactors) {
    this.reactorMap.put(r.getName(),r);
  }
  NIOConnector connector=new NIOConnector("String_Node_Str",reactorPool);
  connector.start();
  NetSystem.getInstance().setConnector(connector);
  boolean isKafkaPoolExist=false;
  this.poolMap=new HashMap<Integer,AbstractPool>(poolCfgMap.size());
  for (  final PoolCfg poolCfg : poolCfgMap.values()) {
    AbstractPool pool=PoolFactory.createPoolByCfg(poolCfg);
    pool.startup();
    this.poolMap.put(pool.getId(),pool);
    if (poolCfg instanceof KafkaPoolCfg) {
      isKafkaPoolExist=true;
    }
  }
  if (isKafkaPoolExist == true && !BrokerOffsetService.INSTANCE().isRunning()) {
    BrokerOffsetService.INSTANCE().start();
    Runtime.getRuntime().addShutdownHook(new Thread(){
      public void run(){
        BrokerOffsetService.INSTANCE().stop();
      }
    }
);
  }
  NIOAcceptor acceptor=new NIOAcceptor("String_Node_Str","String_Node_Str",port,new RedisFrontendConnectionFactory(),reactorPool);
  acceptor.start();
  LOGGER.info(acceptor.getName() + "String_Node_Str",acceptor.getPort());
  Iterator<String> it=userMap.keySet().iterator();
  String authString=it.hasNext() ? it.next() : "String_Node_Str";
  KeepAlived.check(port,authString);
}