Program: 36955
Project: 36955
Buggy source:
public void processTable(int[] table_array){
  Instance iExample=null;
  try {
    int tableid;
    Instances data;
    FastVector atts;
    FastVector attVals;
    double[] vals;
    int i;
    String Caption="String_Node_Str";
    String WholeHeader="String_Node_Str";
    String WholeStub="String_Node_Str";
    String WholeSuperRow="String_Node_Str";
    String WholeData="String_Node_Str";
    String RefereingSentences="String_Node_Str";
    int PMC=0;
    atts=new FastVector();
    atts.addElement(new Attribute("String_Node_Str"));
    atts.addElement(new Attribute("String_Node_Str"));
    atts.addElement(new Attribute("String_Node_Str",(FastVector)null));
    atts.addElement(new Attribute("String_Node_Str",(FastVector)null));
    atts.addElement(new Attribute("String_Node_Str",(FastVector)null));
    atts.addElement(new Attribute("String_Node_Str",(FastVector)null));
    atts.addElement(new Attribute("String_Node_Str",(FastVector)null));
    atts.addElement(new Attribute("String_Node_Str",(FastVector)null));
    FastVector fvClassVal=new FastVector(4);
    fvClassVal.addElement("String_Node_Str");
    fvClassVal.addElement("String_Node_Str");
    fvClassVal.addElement("String_Node_Str");
    fvClassVal.addElement("String_Node_Str");
    Attribute ClassAttribute=new Attribute("String_Node_Str",fvClassVal);
    atts.addElement(ClassAttribute);
    data=new Instances("String_Node_Str",atts,0);
    String SQL="String_Node_Str" + Arrays.toString(table_array);
    SQL=SQL.replace("String_Node_Str","String_Node_Str").replace("String_Node_Str","String_Node_Str");
    Statement st=conn.createStatement();
    rs=st.executeQuery(SQL);
    while (rs.next()) {
      tableid=rs.getInt(1);
      String SQL2="String_Node_Str" + tableid;
      Statement st2=conn.createStatement();
      ResultSet rs1=st2.executeQuery(SQL2);
      while (rs1.next()) {
        Caption=rs1.getString(3);
        PMC=rs1.getInt(12);
      }
      SQL="String_Node_Str" + tableid;
      Statement st3=conn.createStatement();
      ResultSet rs2=st3.executeQuery(SQL);
      while (rs2.next()) {
        int cell_id=rs2.getInt(1);
        String SQL3="String_Node_Str" + cell_id;
        Statement st4=conn.createStatement();
        ResultSet rs4=st4.executeQuery(SQL3);
        while (rs4.next()) {
          int CellRole=rs4.getInt(2);
          if (CellRole == 1) {
            WholeHeader+="String_Node_Str" + rs4.getString(13).toLowerCase();
          }
          if (CellRole == 2) {
            WholeStub+="String_Node_Str" + rs4.getString(13).toLowerCase();
          }
          if (CellRole == 3) {
            WholeData+="String_Node_Str" + rs4.getString(13).toLowerCase();
          }
          if (CellRole == 4) {
            WholeSuperRow+="String_Node_Str" + rs4.getString(13).toLowerCase();
          }
        }
      }
      SQL="String_Node_Str" + tableid;
      Statement st4=conn.createStatement();
      ResultSet rs5=st4.executeQuery(SQL);
      while (rs5.next()) {
        RefereingSentences+="String_Node_Str" + rs5.getString(2);
      }
      vals=new double[data.numAttributes()];
      vals[0]=PMC;
      vals[1]=tableid;
      vals[2]=data.attribute(2).addStringValue(Caption);
      vals[3]=data.attribute(3).addStringValue(WholeHeader);
      vals[4]=data.attribute(4).addStringValue(WholeStub);
      vals[5]=data.attribute(5).addStringValue(WholeSuperRow);
      vals[6]=data.attribute(6).addStringValue(WholeData);
      vals[7]=data.attribute(7).addStringValue(RefereingSentences);
      iExample=new DenseInstance(1.0,vals);
      data.add(iExample);
    }
    ArffSaver saver=new ArffSaver();
    saver.setInstances(data);
    saver.setFile(new File("String_Node_Str"));
    saver.writeBatch();
  }
 catch (  Exception ex) {
    ex.printStackTrace();
  }
}

Fixed version (ground truth):
public void processTable(int[] table_array){
  Instance iExample=null;
  try {
    int tableid;
    Instances data;
    FastVector atts;
    FastVector attVals;
    double[] vals;
    int i;
    String Caption="String_Node_Str";
    String WholeHeader="String_Node_Str";
    String WholeStub="String_Node_Str";
    String WholeSuperRow="String_Node_Str";
    String WholeData="String_Node_Str";
    String RefereingSentences="String_Node_Str";
    int PMC=0;
    atts=new FastVector();
    atts.addElement(new Attribute("String_Node_Str"));
    atts.addElement(new Attribute("String_Node_Str"));
    atts.addElement(new Attribute("String_Node_Str",(FastVector)null));
    atts.addElement(new Attribute("String_Node_Str",(FastVector)null));
    atts.addElement(new Attribute("String_Node_Str",(FastVector)null));
    atts.addElement(new Attribute("String_Node_Str",(FastVector)null));
    atts.addElement(new Attribute("String_Node_Str",(FastVector)null));
    atts.addElement(new Attribute("String_Node_Str",(FastVector)null));
    FastVector fvClassVal=new FastVector(4);
    fvClassVal.addElement("String_Node_Str");
    fvClassVal.addElement("String_Node_Str");
    fvClassVal.addElement("String_Node_Str");
    fvClassVal.addElement("String_Node_Str");
    Attribute ClassAttribute=new Attribute("String_Node_Str",fvClassVal);
    atts.addElement(ClassAttribute);
    data=new Instances("String_Node_Str",atts,3);
    String SQL="String_Node_Str" + Arrays.toString(table_array);
    SQL=SQL.replace("String_Node_Str","String_Node_Str").replace("String_Node_Str","String_Node_Str");
    Statement st=conn.createStatement();
    rs=st.executeQuery(SQL);
    while (rs.next()) {
      Caption="String_Node_Str";
      WholeHeader="String_Node_Str";
      WholeStub="String_Node_Str";
      WholeSuperRow="String_Node_Str";
      WholeData="String_Node_Str";
      RefereingSentences="String_Node_Str";
      tableid=rs.getInt(1);
      String SQL2="String_Node_Str" + tableid;
      Statement st2=conn.createStatement();
      ResultSet rs1=st2.executeQuery(SQL2);
      while (rs1.next()) {
        Caption=rs1.getString(3);
        PMC=rs1.getInt(12);
      }
      SQL="String_Node_Str" + tableid;
      Statement st3=conn.createStatement();
      ResultSet rs2=st3.executeQuery(SQL);
      while (rs2.next()) {
        int cell_id=rs2.getInt(1);
        String SQL3="String_Node_Str" + cell_id;
        Statement st4=conn.createStatement();
        ResultSet rs4=st4.executeQuery(SQL3);
        while (rs4.next()) {
          int CellRole=rs4.getInt(2);
          if (CellRole == 1) {
            WholeHeader+="String_Node_Str" + rs4.getString(13).toLowerCase();
          }
          if (CellRole == 2) {
            WholeStub+="String_Node_Str" + rs4.getString(13).toLowerCase();
          }
          if (CellRole == 3) {
            WholeData+="String_Node_Str" + rs4.getString(13).toLowerCase();
          }
          if (CellRole == 4) {
            WholeSuperRow+="String_Node_Str" + rs4.getString(13).toLowerCase();
          }
        }
      }
      SQL="String_Node_Str" + tableid;
      Statement st4=conn.createStatement();
      ResultSet rs5=st4.executeQuery(SQL);
      while (rs5.next()) {
        RefereingSentences+="String_Node_Str" + rs5.getString(2);
      }
      vals=new double[data.numAttributes()];
      vals[0]=PMC;
      vals[1]=tableid;
      vals[2]=data.attribute(2).addStringValue(Caption);
      vals[3]=data.attribute(3).addStringValue(WholeHeader);
      vals[4]=data.attribute(4).addStringValue(WholeStub);
      vals[5]=data.attribute(5).addStringValue(WholeSuperRow);
      vals[6]=data.attribute(6).addStringValue(WholeData);
      vals[7]=data.attribute(7).addStringValue(RefereingSentences);
      vals[8]=2;
      iExample=new DenseInstance(1.0,vals);
      data.add(iExample);
    }
    ArffSaver saver=new ArffSaver();
    saver.setInstances(data);
    saver.setFile(new File("String_Node_Str"));
    saver.writeBatch();
  }
 catch (  Exception ex) {
    ex.printStackTrace();
  }
}