Program: 50501
Project: 50501
Buggy source:
ExecutorManager(Node node){
  super(node);
  registerPacketProcessor(ClusterOperation.REMOTELY_EXECUTE,new PacketProcessor(){
    public void process(    Packet packet){
      handleRemoteExecution(packet);
    }
  }
);
  registerPacketProcessor(ClusterOperation.STREAM,new PacketProcessor(){
    public void process(    Packet packet){
      handleStream(packet);
    }
  }
);
  if (logger.isLoggable(Level.FINEST)) {
    logger.log(Level.FINEST,"String_Node_Str");
  }
  Config config=node.getConfig();
  final int corePoolSize=config.getExecutorConfig().getCorePoolSize();
  final int maxPoolSize=config.getExecutorConfig().getMaxPoolsize();
  final long keepAliveSeconds=config.getExecutorConfig().getKeepAliveSeconds();
  if (logger.isLoggable(Level.FINEST)) {
    logger.log(Level.FINEST,"String_Node_Str" + corePoolSize + "String_Node_Str"+ maxPoolSize+ "String_Node_Str"+ keepAliveSeconds);
  }
  executor=new ThreadPoolExecutor(corePoolSize,maxPoolSize,keepAliveSeconds,TimeUnit.SECONDS,new LinkedBlockingQueue<Runnable>(),new ExecutorThreadFactory(node.threadGroup,node.getName()),new RejectionHandler());
  executorForMigrations=new ThreadPoolExecutor(1,16,60,TimeUnit.SECONDS,new LinkedBlockingQueue<Runnable>(),new ExecutorThreadFactory(node.threadGroup,node.getName() + "String_Node_Str"),new RejectionHandler());
  node.getClusterImpl().addMembershipListener(this);
  for (int i=0; i < 100; i++) {
    executionIds.add((long)i);
  }
  started=true;
}

Fixed version (ground truth):
ExecutorManager(final Node node){
  super(node);
  registerPacketProcessor(ClusterOperation.REMOTELY_EXECUTE,new PacketProcessor(){
    public void process(    Packet packet){
      handleRemoteExecution(packet);
    }
  }
);
  registerPacketProcessor(ClusterOperation.STREAM,new PacketProcessor(){
    public void process(    Packet packet){
      handleStream(packet);
    }
  }
);
  if (logger.isLoggable(Level.FINEST)) {
    logger.log(Level.FINEST,"String_Node_Str");
  }
  Config config=node.getConfig();
  final int corePoolSize=config.getExecutorConfig().getCorePoolSize();
  final int maxPoolSize=config.getExecutorConfig().getMaxPoolsize();
  final long keepAliveSeconds=config.getExecutorConfig().getKeepAliveSeconds();
  if (logger.isLoggable(Level.FINEST)) {
    logger.log(Level.FINEST,"String_Node_Str" + corePoolSize + "String_Node_Str"+ maxPoolSize+ "String_Node_Str"+ keepAliveSeconds);
  }
  executor=new ThreadPoolExecutor(corePoolSize,maxPoolSize,keepAliveSeconds,TimeUnit.SECONDS,new LinkedBlockingQueue<Runnable>(),new ExecutorThreadFactory(node.threadGroup,node.getName()),new RejectionHandler()){
    protected void beforeExecute(    Thread t,    Runnable r){
      ThreadContext.get().setCurrentFactory(node.factory);
    }
  }
;
  executorForMigrations=new ThreadPoolExecutor(1,16,60,TimeUnit.SECONDS,new LinkedBlockingQueue<Runnable>(),new ExecutorThreadFactory(node.threadGroup,node.getName() + "String_Node_Str"),new RejectionHandler()){
    protected void beforeExecute(    Thread t,    Runnable r){
      ThreadContext.get().setCurrentFactory(node.factory);
    }
  }
;
  node.getClusterImpl().addMembershipListener(this);
  for (int i=0; i < 100; i++) {
    executionIds.add((long)i);
  }
  started=true;
}