Program: 131782
Project: 131782
Buggy source:
@Override public void solve(File lpFile){
  if (!lpFile.getPath().endsWith("String_Node_Str")) {
    throw new IllegalStateException("String_Node_Str" + lpFile.getPath());
  }
  result=new HashMap<String,Double>();
  try {
    IloCplex cplex=new IloCplex();
    OutputStream out=new BufferedOutputStream(new FileOutputStream(new File(tempDir,"String_Node_Str")));
    try {
      cplex.importModel(lpFile.getAbsolutePath());
      File ordFile=new File(lpFile.getAbsolutePath().replace("String_Node_Str","String_Node_Str"));
      if (ordFile.exists()) {
        log.warn("String_Node_Str" + ordFile.getPath());
      }
      File mstFile=new File(lpFile.getAbsolutePath().replace("String_Node_Str","String_Node_Str"));
      if (mstFile.exists()) {
        log.debug("String_Node_Str" + mstFile.getPath());
        cplex.readMIPStart(mstFile.getAbsolutePath());
      }
      cplex.setParam(DoubleParam.WorkMem,workMemMegs);
      cplex.setParam(StringParam.WorkDir,tempDir.getAbsolutePath());
      cplex.setParam(DoubleParam.TreLim,32000.0);
      cplex.setParam(IntParam.Threads,numThreads);
      cplex.setParam(IntParam.ParallelMode,1);
      cplex.setOut(out);
      cplex.setWarning(out);
      cplex.exportModel(new File(tempDir,"String_Node_Str").getAbsolutePath());
      cplex.writeParam(new File(tempDir,"String_Node_Str").getAbsolutePath());
      if (cplex.solve()) {
        cplex.output().println("String_Node_Str" + cplex.getStatus());
        cplex.output().println("String_Node_Str" + cplex.getObjValue());
        objective=cplex.getObjValue();
        IloLPMatrix lp=(IloLPMatrix)cplex.LPMatrixIterator().next();
        IloNumVar[] vars=lp.getNumVars();
        double[] vals=cplex.getValues(lp);
        assert(vars.length == vals.length);
        for (int i=0; i < vars.length; i++) {
          result.put(vars[i].getName(),vals[i]);
        }
        cplex.writeSolution(lpFile.getAbsolutePath().replace("String_Node_Str","String_Node_Str"));
      }
    }
  finally {
      cplex.end();
      out.close();
    }
  }
 catch (  IloException e) {
    throw new RuntimeException(e);
  }
catch (  IOException e) {
    throw new RuntimeException(e);
  }
}

Fixed version (ground truth):
@Override public boolean solve(File lpFile){
  if (!lpFile.getPath().endsWith("String_Node_Str")) {
    throw new IllegalStateException("String_Node_Str" + lpFile.getPath());
  }
  result=new HashMap<String,Double>();
  try {
    IloCplex cplex=new IloCplex();
    OutputStream out=new BufferedOutputStream(new FileOutputStream(new File(tempDir,"String_Node_Str")));
    try {
      cplex.importModel(lpFile.getAbsolutePath());
      File ordFile=new File(lpFile.getAbsolutePath().replace("String_Node_Str","String_Node_Str"));
      if (ordFile.exists()) {
        log.warn("String_Node_Str" + ordFile.getPath());
      }
      File mstFile=new File(lpFile.getAbsolutePath().replace("String_Node_Str","String_Node_Str"));
      if (mstFile.exists()) {
        log.debug("String_Node_Str" + mstFile.getPath());
        cplex.readMIPStart(mstFile.getAbsolutePath());
      }
      cplex.setParam(DoubleParam.WorkMem,workMemMegs);
      cplex.setParam(StringParam.WorkDir,tempDir.getAbsolutePath());
      cplex.setParam(DoubleParam.TreLim,32000.0);
      cplex.setParam(IntParam.Threads,numThreads);
      cplex.setParam(IntParam.ParallelMode,1);
      cplex.setOut(out);
      cplex.setWarning(out);
      cplex.exportModel(new File(tempDir,"String_Node_Str").getAbsolutePath());
      cplex.writeParam(new File(tempDir,"String_Node_Str").getAbsolutePath());
      cplex.solve();
      if (cplex.getStatus() != Status.Optimal) {
        return false;
      }
      cplex.output().println("String_Node_Str" + cplex.getStatus());
      cplex.output().println("String_Node_Str" + cplex.getObjValue());
      objective=cplex.getObjValue();
      IloLPMatrix lp=(IloLPMatrix)cplex.LPMatrixIterator().next();
      IloNumVar[] vars=lp.getNumVars();
      double[] vals=cplex.getValues(lp);
      assert(vars.length == vals.length);
      for (int i=0; i < vars.length; i++) {
        result.put(vars[i].getName(),vals[i]);
      }
      cplex.writeSolution(lpFile.getAbsolutePath().replace("String_Node_Str","String_Node_Str"));
      return true;
    }
  finally {
      cplex.end();
      out.close();
    }
  }
 catch (  IloException e) {
    throw new RuntimeException(e);
  }
catch (  IOException e) {
    throw new RuntimeException(e);
  }
}