Program: 95962
Project: 95962
Buggy source:
@Test public void test17Tpch() throws VerdictDBException, SQLException {
  String sql="String_Node_Str" + "String_Node_Str" + "String_Node_Str"+ "String_Node_Str"+ "String_Node_Str"+ "String_Node_Str"+ "String_Node_Str"+ "String_Node_Str"+ "String_Node_Str"+ "String_Node_Str"+ "String_Node_Str"+ "String_Node_Str"+ "String_Node_Str"+ "String_Node_Str"+ "String_Node_Str"+ "String_Node_Str"+ "String_Node_Str"+ "String_Node_Str"+ "String_Node_Str"+ "String_Node_Str"+ "String_Node_Str"+ "String_Node_Str"+ "String_Node_Str"+ "String_Node_Str"+ "String_Node_Str"+ "String_Node_Str";
  stmt.execute("String_Node_Str");
  SelectQueryCoordinator coordinator=new SelectQueryCoordinator(new JdbcConnection(conn,new MysqlSyntax()));
  coordinator.setScrambleMetaSet(meta);
  coordinator.setDefaultSchema("String_Node_Str");
  ExecutionResultReader reader=coordinator.process(sql);
  NonValidatingSQLParser sqlToRelation=new NonValidatingSQLParser();
  AbstractRelation relation=sqlToRelation.toRelation(sql);
  RelationStandardizer gen=new RelationStandardizer(coordinator.getStaticMetaData());
  relation=gen.standardize((SelectQuery)relation);
  SelectQueryToSql selectQueryToSql=new SelectQueryToSql(new MysqlSyntax());
  String stdQuery=selectQueryToSql.toSql(relation);
  int cnt=0;
  while (reader.hasNext()) {
    DbmsQueryResult dbmsQueryResult=reader.next();
    cnt++;
    if (cnt == 10) {
      ResultSet rs=stmt.executeQuery(stdQuery);
      while (rs.next()) {
        dbmsQueryResult.next();
        assertEquals(rs.getDouble(1),dbmsQueryResult.getDouble(0),1e-5);
      }
    }
  }
  assertEquals(10,cnt);
  stmt.execute("String_Node_Str");
}

Fixed version (ground truth):
@Test public void test17Tpch() throws VerdictDBException, SQLException {
  String sql="String_Node_Str" + "String_Node_Str" + "String_Node_Str"+ "String_Node_Str"+ "String_Node_Str"+ "String_Node_Str"+ "String_Node_Str"+ "String_Node_Str"+ "String_Node_Str"+ "String_Node_Str"+ "String_Node_Str"+ "String_Node_Str"+ "String_Node_Str"+ "String_Node_Str"+ "String_Node_Str"+ "String_Node_Str"+ "String_Node_Str"+ "String_Node_Str"+ "String_Node_Str"+ "String_Node_Str"+ "String_Node_Str"+ "String_Node_Str"+ "String_Node_Str"+ "String_Node_Str"+ "String_Node_Str"+ "String_Node_Str";
  stmt.execute("String_Node_Str");
  SelectQueryCoordinator coordinator=new SelectQueryCoordinator(new JdbcConnection(conn,new MysqlSyntax()));
  coordinator.setScrambleMetaSet(meta);
  coordinator.setDefaultSchema("String_Node_Str");
  ExecutionResultReader reader=coordinator.process(sql);
  NonValidatingSQLParser sqlToRelation=new NonValidatingSQLParser();
  AbstractRelation relation=sqlToRelation.toRelation(sql);
  RelationStandardizer gen=new RelationStandardizer(coordinator.getStaticMetaData());
  relation=gen.standardize((SelectQuery)relation);
  SelectQueryToSql selectQueryToSql=new SelectQueryToSql(new MysqlSyntax());
  String stdQuery=selectQueryToSql.toSql(relation);
  int cnt=0;
  while (reader.hasNext()) {
    DbmsQueryResult dbmsQueryResult=reader.next();
    cnt++;
    if (cnt == 10) {
      ResultSet rs=stmt.executeQuery(stdQuery);
      while (rs.next()) {
        dbmsQueryResult.next();
        assertEquals(rs.getDouble(1),dbmsQueryResult.getDouble(0),1e-5);
      }
    }
  }
  assertEquals(10,cnt);
  stmt.execute("String_Node_Str");
  System.out.println("String_Node_Str");
}