Program: 78179
Project: 78179
Buggy source:
public Miner(String node,int cores,String worker){
  this.hasherMode=AdvMode.standard;
  this.worker=php_uniqid();
  this.updaters=Executors.newSingleThreadExecutor();
  this.submitters=Executors.newCachedThreadPool();
  this.hasherCount=new AtomicInteger();
  this.workers=new ConcurrentHashMap<String,Hasher>();
  this.deadWorkerSociety=new ConcurrentLinkedQueue<>();
  this.deadWorkers=new AtomicLong(0l);
  this.deadWorkerLives=new ConcurrentHashMap<String,Long>();
  this.blockFinds=new AtomicLong();
  this.blockShares=new AtomicLong();
  sendSpeed=false;
  lastSendSpeed=System.currentTimeMillis();
  activeProfile=null;
  TreeSet<Profile> evaluatedProfiles=new TreeSet<Profile>();
  ConcurrentLinkedQueue<Profile> profilesToEvaluate=new ConcurrentLinkedQueue<Profile>();
  int coreCap=Runtime.getRuntime().availableProcessors();
  long nextProfileSwap=0;
  long profilesTested=0;
  this.statsHost=null;
  this.statsInvoke="String_Node_Str";
  this.statsToken=php_uniqid();
  this.post=false;
  this.statsStage=new ConcurrentHashMap<String,HasherStats>();
  this.statsReport=new ConcurrentLinkedQueue<HasherStats>();
  this.stats=Executors.newCachedThreadPool();
  this.hashes=new AtomicLong();
  this.bestDL=new AtomicLong(Long.MAX_VALUE);
  this.sessionSubmits=new AtomicLong();
  this.sessionRejects=new AtomicLong();
  this.lastSpeed=new AtomicLong();
  this.speedAccrue=new AtomicLong();
  this.updateTimeAvg=new AtomicLong();
  this.updateTimeMax=new AtomicLong(Long.MIN_VALUE);
  this.updateTimeMin=new AtomicLong(Long.MAX_VALUE);
  this.updateParseTimeAvg=new AtomicLong();
  this.updateParseTimeMax=new AtomicLong(Long.MIN_VALUE);
  this.updateParseTimeMin=new AtomicLong(Long.MAX_VALUE);
  this.submitTimeAvg=new AtomicLong();
  this.submitTimeMax=new AtomicLong(Long.MIN_VALUE);
  this.submitTimeMin=new AtomicLong(Long.MAX_VALUE);
  this.submitParseTimeAvg=new AtomicLong();
  this.submitParseTimeMax=new AtomicLong(Long.MIN_VALUE);
  this.submitParseTimeMin=new AtomicLong(Long.MAX_VALUE);
  try {
    this.node=node;
    this.type=MinerType.pool;
    this.publicKey=HomeView.getAddress();
    this.privateKey=publicKey;
    this.node=node;
    this.hasherMode=AdvMode.standard;
    this.maxHashers=cores;
    this.worker=worker;
    System.out.println("String_Node_Str" + this.type);
    System.out.println("String_Node_Str" + this.type);
    System.out.println("String_Node_Str" + this.publicKey);
    System.out.println("String_Node_Str" + this.privateKey);
    System.out.println("String_Node_Str" + this.maxHashers);
    System.out.println("String_Node_Str" + this.hasherMode);
  }
 catch (  Exception e) {
    System.err.println("String_Node_Str" + (e.getMessage()));
    System.err.println("String_Node_Str" + this.type);
    System.err.println("String_Node_Str" + this.node);
    System.err.println("String_Node_Str" + this.publicKey);
    System.err.println("String_Node_Str" + this.privateKey);
    System.err.println("String_Node_Str" + this.maxHashers);
    System.err.println("String_Node_Str" + this.hasherMode);
    System.err.println("String_Node_Str" + this.colors);
    System.err.println("String_Node_Str" + this.worker);
  }
  this.hashers=Executors.newFixedThreadPool(this.maxHashers > 0 ? this.maxHashers : Runtime.getRuntime().availableProcessors());
  this.limit=240;
  this.wallClockBegin=System.currentTimeMillis();
}

Fixed version (ground truth):
public Miner(String node,int cores,String worker){
  this.hasherMode=AdvMode.standard;
  this.worker=php_uniqid();
  this.updaters=Executors.newSingleThreadExecutor();
  this.submitters=Executors.newCachedThreadPool();
  this.hasherCount=new AtomicInteger();
  this.workers=new ConcurrentHashMap<String,Hasher>();
  this.deadWorkerSociety=new ConcurrentLinkedQueue<>();
  this.deadWorkers=new AtomicLong(0l);
  this.deadWorkerLives=new ConcurrentHashMap<String,Long>();
  this.blockFinds=new AtomicLong();
  this.blockShares=new AtomicLong();
  sendSpeed=false;
  lastSendSpeed=System.currentTimeMillis();
  activeProfile=null;
  TreeSet<Profile> evaluatedProfiles=new TreeSet<Profile>();
  ConcurrentLinkedQueue<Profile> profilesToEvaluate=new ConcurrentLinkedQueue<Profile>();
  int coreCap=Runtime.getRuntime().availableProcessors();
  long nextProfileSwap=0;
  long profilesTested=0;
  this.statsHost=null;
  this.statsInvoke="String_Node_Str";
  this.statsToken=php_uniqid();
  this.post=false;
  this.statsStage=new ConcurrentHashMap<String,HasherStats>();
  this.statsReport=new ConcurrentLinkedQueue<HasherStats>();
  this.stats=Executors.newCachedThreadPool();
  this.hashes=new AtomicLong();
  this.bestDL=new AtomicLong(Long.MAX_VALUE);
  this.sessionSubmits=new AtomicLong();
  this.sessionRejects=new AtomicLong();
  this.lastSpeed=new AtomicLong();
  this.speedAccrue=new AtomicLong();
  this.updateTimeAvg=new AtomicLong();
  this.updateTimeMax=new AtomicLong(Long.MIN_VALUE);
  this.updateTimeMin=new AtomicLong(Long.MAX_VALUE);
  this.updateParseTimeAvg=new AtomicLong();
  this.updateParseTimeMax=new AtomicLong(Long.MIN_VALUE);
  this.updateParseTimeMin=new AtomicLong(Long.MAX_VALUE);
  this.submitTimeAvg=new AtomicLong();
  this.submitTimeMax=new AtomicLong(Long.MIN_VALUE);
  this.submitTimeMin=new AtomicLong(Long.MAX_VALUE);
  this.submitParseTimeAvg=new AtomicLong();
  this.submitParseTimeMax=new AtomicLong(Long.MIN_VALUE);
  this.submitParseTimeMin=new AtomicLong(Long.MAX_VALUE);
  try {
    Miner.node=node;
    this.type=MinerType.pool;
    this.publicKey=HomeView.getAddress();
    this.privateKey=publicKey;
    Miner.node=node;
    this.hasherMode=AdvMode.standard;
    this.maxHashers=cores;
    this.worker=worker;
    System.out.println("String_Node_Str" + this.type);
    System.out.println("String_Node_Str" + this.type);
    System.out.println("String_Node_Str" + this.publicKey);
    System.out.println("String_Node_Str" + this.privateKey);
    System.out.println("String_Node_Str" + this.maxHashers);
    System.out.println("String_Node_Str" + this.hasherMode);
  }
 catch (  Exception e) {
    System.err.println("String_Node_Str" + (e.getMessage()));
    System.err.println("String_Node_Str" + this.type);
    System.err.println("String_Node_Str" + Miner.node);
    System.err.println("String_Node_Str" + this.publicKey);
    System.err.println("String_Node_Str" + this.privateKey);
    System.err.println("String_Node_Str" + this.maxHashers);
    System.err.println("String_Node_Str" + this.hasherMode);
    System.err.println("String_Node_Str" + this.colors);
    System.err.println("String_Node_Str" + this.worker);
  }
  this.hashers=Executors.newFixedThreadPool(this.maxHashers > 0 ? this.maxHashers : Runtime.getRuntime().availableProcessors());
  this.limit=240;
  this.wallClockBegin=System.currentTimeMillis();
}