Program: 95992
Project: 95992
Buggy source:
@Test public void Query19Test() throws VerdictDBException, SQLException {
  RelationStandardizer.resetItemID();
  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"+ "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";
  NonValidatingSQLParser sqlToRelation=new NonValidatingSQLParser();
  AbstractRelation relation=sqlToRelation.toRelation(sql);
  RelationStandardizer gen=new RelationStandardizer(staticMetaData);
  relation=gen.standardize((SelectQuery)relation);
  QueryExecutionPlan queryExecutionPlan=new QueryExecutionPlan("String_Node_Str",meta,(SelectQuery)relation);
  queryExecutionPlan.cleanUp();
  AbstractRelation lineitem=new BaseTable("String_Node_Str","String_Node_Str","String_Node_Str");
  AbstractRelation part=new BaseTable("String_Node_Str","String_Node_Str","String_Node_Str");
  SelectQuery expected=SelectQuery.create(Arrays.<SelectItem>asList(new AliasedColumn(new ColumnOp("String_Node_Str",new ColumnOp("String_Node_Str",Arrays.<UnnamedColumn>asList(new BaseColumn("String_Node_Str","String_Node_Str"),new ColumnOp("String_Node_Str",Arrays.<UnnamedColumn>asList(ConstantColumn.valueOf(1),new BaseColumn("String_Node_Str","String_Node_Str")))))),"String_Node_Str")),Arrays.asList(lineitem,part));
  ColumnOp columnOp1=new ColumnOp("String_Node_Str",Arrays.<UnnamedColumn>asList(new ColumnOp("String_Node_Str",Arrays.<UnnamedColumn>asList(new ColumnOp("String_Node_Str",Arrays.<UnnamedColumn>asList(new ColumnOp("String_Node_Str",Arrays.<UnnamedColumn>asList(new ColumnOp("String_Node_Str",Arrays.<UnnamedColumn>asList(new ColumnOp("String_Node_Str",Arrays.<UnnamedColumn>asList(new ColumnOp("String_Node_Str",Arrays.<UnnamedColumn>asList(new ColumnOp("String_Node_Str",Arrays.<UnnamedColumn>asList(new BaseColumn("String_Node_Str","String_Node_Str"),new BaseColumn("String_Node_Str","String_Node_Str"))),new ColumnOp("String_Node_Str",Arrays.<UnnamedColumn>asList(new BaseColumn("String_Node_Str","String_Node_Str"),ConstantColumn.valueOf("String_Node_Str"))))),new ColumnOp("String_Node_Str",Arrays.<UnnamedColumn>asList(new BaseColumn("String_Node_Str","String_Node_Str"),ConstantColumn.valueOf("String_Node_Str"),ConstantColumn.valueOf("String_Node_Str"),ConstantColumn.valueOf("String_Node_Str"),ConstantColumn.valueOf("String_Node_Str"))))),new ColumnOp("String_Node_Str",Arrays.<UnnamedColumn>asList(new BaseColumn("String_Node_Str","String_Node_Str"),ConstantColumn.valueOf(4))))),new ColumnOp("String_Node_Str",Arrays.<UnnamedColumn>asList(new BaseColumn("String_Node_Str","String_Node_Str"),new ColumnOp("String_Node_Str",Arrays.<UnnamedColumn>asList(ConstantColumn.valueOf(4),ConstantColumn.valueOf(10))))))),new ColumnOp("String_Node_Str",Arrays.<UnnamedColumn>asList(new BaseColumn("String_Node_Str","String_Node_Str"),ConstantColumn.valueOf(1),ConstantColumn.valueOf(5))))),new ColumnOp("String_Node_Str",Arrays.<UnnamedColumn>asList(new BaseColumn("String_Node_Str","String_Node_Str"),ConstantColumn.valueOf("String_Node_Str"),ConstantColumn.valueOf("String_Node_Str"))))),new ColumnOp("String_Node_Str",Arrays.<UnnamedColumn>asList(new BaseColumn("String_Node_Str","String_Node_Str"),ConstantColumn.valueOf("String_Node_Str")))));
  ColumnOp columnOp2=new ColumnOp("String_Node_Str",Arrays.<UnnamedColumn>asList(new ColumnOp("String_Node_Str",Arrays.<UnnamedColumn>asList(new ColumnOp("String_Node_Str",Arrays.<UnnamedColumn>asList(new ColumnOp("String_Node_Str",Arrays.<UnnamedColumn>asList(new ColumnOp("String_Node_Str",Arrays.<UnnamedColumn>asList(new ColumnOp("String_Node_Str",Arrays.<UnnamedColumn>asList(new ColumnOp("String_Node_Str",Arrays.<UnnamedColumn>asList(new ColumnOp("String_Node_Str",Arrays.<UnnamedColumn>asList(new BaseColumn("String_Node_Str","String_Node_Str"),new BaseColumn("String_Node_Str","String_Node_Str"))),new ColumnOp("String_Node_Str",Arrays.<UnnamedColumn>asList(new BaseColumn("String_Node_Str","String_Node_Str"),ConstantColumn.valueOf("String_Node_Str"))))),new ColumnOp("String_Node_Str",Arrays.<UnnamedColumn>asList(new BaseColumn("String_Node_Str","String_Node_Str"),ConstantColumn.valueOf("String_Node_Str"),ConstantColumn.valueOf("String_Node_Str"),ConstantColumn.valueOf("String_Node_Str"),ConstantColumn.valueOf("String_Node_Str"))))),new ColumnOp("String_Node_Str",Arrays.<UnnamedColumn>asList(new BaseColumn("String_Node_Str","String_Node_Str"),ConstantColumn.valueOf(5))))),new ColumnOp("String_Node_Str",Arrays.<UnnamedColumn>asList(new BaseColumn("String_Node_Str","String_Node_Str"),new ColumnOp("String_Node_Str",Arrays.<UnnamedColumn>asList(ConstantColumn.valueOf(5),ConstantColumn.valueOf(10))))))),new ColumnOp("String_Node_Str",Arrays.<UnnamedColumn>asList(new BaseColumn("String_Node_Str","String_Node_Str"),ConstantColumn.valueOf(1),ConstantColumn.valueOf(10))))),new ColumnOp("String_Node_Str",Arrays.<UnnamedColumn>asList(new BaseColumn("String_Node_Str","String_Node_Str"),ConstantColumn.valueOf("String_Node_Str"),ConstantColumn.valueOf("String_Node_Str"))))),new ColumnOp("String_Node_Str",Arrays.<UnnamedColumn>asList(new BaseColumn("String_Node_Str","String_Node_Str"),ConstantColumn.valueOf("String_Node_Str")))));
  ColumnOp columnOp3=new ColumnOp("String_Node_Str",Arrays.<UnnamedColumn>asList(new ColumnOp("String_Node_Str",Arrays.<UnnamedColumn>asList(new ColumnOp("String_Node_Str",Arrays.<UnnamedColumn>asList(new ColumnOp("String_Node_Str",Arrays.<UnnamedColumn>asList(new ColumnOp("String_Node_Str",Arrays.<UnnamedColumn>asList(new ColumnOp("String_Node_Str",Arrays.<UnnamedColumn>asList(new ColumnOp("String_Node_Str",Arrays.<UnnamedColumn>asList(new ColumnOp("String_Node_Str",Arrays.<UnnamedColumn>asList(new BaseColumn("String_Node_Str","String_Node_Str"),new BaseColumn("String_Node_Str","String_Node_Str"))),new ColumnOp("String_Node_Str",Arrays.<UnnamedColumn>asList(new BaseColumn("String_Node_Str","String_Node_Str"),ConstantColumn.valueOf("String_Node_Str"))))),new ColumnOp("String_Node_Str",Arrays.<UnnamedColumn>asList(new BaseColumn("String_Node_Str","String_Node_Str"),ConstantColumn.valueOf("String_Node_Str"),ConstantColumn.valueOf("String_Node_Str"),ConstantColumn.valueOf("String_Node_Str"),ConstantColumn.valueOf("String_Node_Str"))))),new ColumnOp("String_Node_Str",Arrays.<UnnamedColumn>asList(new BaseColumn("String_Node_Str","String_Node_Str"),ConstantColumn.valueOf(6))))),new ColumnOp("String_Node_Str",Arrays.<UnnamedColumn>asList(new BaseColumn("String_Node_Str","String_Node_Str"),new ColumnOp("String_Node_Str",Arrays.<UnnamedColumn>asList(ConstantColumn.valueOf(6),ConstantColumn.valueOf(10))))))),new ColumnOp("String_Node_Str",Arrays.<UnnamedColumn>asList(new BaseColumn("String_Node_Str","String_Node_Str"),ConstantColumn.valueOf(1),ConstantColumn.valueOf(15))))),new ColumnOp("String_Node_Str",Arrays.<UnnamedColumn>asList(new BaseColumn("String_Node_Str","String_Node_Str"),ConstantColumn.valueOf("String_Node_Str"),ConstantColumn.valueOf("String_Node_Str"))))),new ColumnOp("String_Node_Str",Arrays.<UnnamedColumn>asList(new BaseColumn("String_Node_Str","String_Node_Str"),ConstantColumn.valueOf("String_Node_Str")))));
  expected.addFilterByAnd(new ColumnOp("String_Node_Str",Arrays.<UnnamedColumn>asList(new ColumnOp("String_Node_Str",Arrays.<UnnamedColumn>asList(columnOp1,columnOp2)),columnOp3)));
  expected.addLimit(ConstantColumn.valueOf(1));
  assertEquals(expected,((CreateTableAsSelectNode)queryExecutionPlan.root.dependents.get(0)).selectQuery);
  stmt.execute("String_Node_Str");
  ExecutablePlanRunner.runTillEnd(new JdbcConnection(conn,new H2Syntax()),queryExecutionPlan);
  stmt.execute("String_Node_Str");
}

Fixed version (ground truth):
public void Query19Test() throws VerdictDBException, SQLException {
  RelationStandardizer.resetItemID();
  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"+ "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";
  NonValidatingSQLParser sqlToRelation=new NonValidatingSQLParser();
  AbstractRelation relation=sqlToRelation.toRelation(sql);
  RelationStandardizer gen=new RelationStandardizer(staticMetaData);
  relation=gen.standardize((SelectQuery)relation);
  QueryExecutionPlan queryExecutionPlan=new QueryExecutionPlan("String_Node_Str",meta,(SelectQuery)relation);
  queryExecutionPlan.cleanUp();
  AbstractRelation lineitem=new BaseTable("String_Node_Str","String_Node_Str","String_Node_Str");
  AbstractRelation part=new BaseTable("String_Node_Str","String_Node_Str","String_Node_Str");
  SelectQuery expected=SelectQuery.create(Arrays.<SelectItem>asList(new AliasedColumn(new ColumnOp("String_Node_Str",new ColumnOp("String_Node_Str",Arrays.<UnnamedColumn>asList(new BaseColumn("String_Node_Str","String_Node_Str"),new ColumnOp("String_Node_Str",Arrays.<UnnamedColumn>asList(ConstantColumn.valueOf(1),new BaseColumn("String_Node_Str","String_Node_Str")))))),"String_Node_Str")),Arrays.asList(lineitem,part));
  ColumnOp columnOp1=new ColumnOp("String_Node_Str",Arrays.<UnnamedColumn>asList(new ColumnOp("String_Node_Str",Arrays.<UnnamedColumn>asList(new ColumnOp("String_Node_Str",Arrays.<UnnamedColumn>asList(new ColumnOp("String_Node_Str",Arrays.<UnnamedColumn>asList(new ColumnOp("String_Node_Str",Arrays.<UnnamedColumn>asList(new ColumnOp("String_Node_Str",Arrays.<UnnamedColumn>asList(new ColumnOp("String_Node_Str",Arrays.<UnnamedColumn>asList(new ColumnOp("String_Node_Str",Arrays.<UnnamedColumn>asList(new BaseColumn("String_Node_Str","String_Node_Str"),new BaseColumn("String_Node_Str","String_Node_Str"))),new ColumnOp("String_Node_Str",Arrays.<UnnamedColumn>asList(new BaseColumn("String_Node_Str","String_Node_Str"),ConstantColumn.valueOf("String_Node_Str"))))),new ColumnOp("String_Node_Str",Arrays.<UnnamedColumn>asList(new BaseColumn("String_Node_Str","String_Node_Str"),ConstantColumn.valueOf("String_Node_Str"),ConstantColumn.valueOf("String_Node_Str"),ConstantColumn.valueOf("String_Node_Str"),ConstantColumn.valueOf("String_Node_Str"))))),new ColumnOp("String_Node_Str",Arrays.<UnnamedColumn>asList(new BaseColumn("String_Node_Str","String_Node_Str"),ConstantColumn.valueOf(4))))),new ColumnOp("String_Node_Str",Arrays.<UnnamedColumn>asList(new BaseColumn("String_Node_Str","String_Node_Str"),new ColumnOp("String_Node_Str",Arrays.<UnnamedColumn>asList(ConstantColumn.valueOf(4),ConstantColumn.valueOf(10))))))),new ColumnOp("String_Node_Str",Arrays.<UnnamedColumn>asList(new BaseColumn("String_Node_Str","String_Node_Str"),ConstantColumn.valueOf(1),ConstantColumn.valueOf(5))))),new ColumnOp("String_Node_Str",Arrays.<UnnamedColumn>asList(new BaseColumn("String_Node_Str","String_Node_Str"),ConstantColumn.valueOf("String_Node_Str"),ConstantColumn.valueOf("String_Node_Str"))))),new ColumnOp("String_Node_Str",Arrays.<UnnamedColumn>asList(new BaseColumn("String_Node_Str","String_Node_Str"),ConstantColumn.valueOf("String_Node_Str")))));
  ColumnOp columnOp2=new ColumnOp("String_Node_Str",Arrays.<UnnamedColumn>asList(new ColumnOp("String_Node_Str",Arrays.<UnnamedColumn>asList(new ColumnOp("String_Node_Str",Arrays.<UnnamedColumn>asList(new ColumnOp("String_Node_Str",Arrays.<UnnamedColumn>asList(new ColumnOp("String_Node_Str",Arrays.<UnnamedColumn>asList(new ColumnOp("String_Node_Str",Arrays.<UnnamedColumn>asList(new ColumnOp("String_Node_Str",Arrays.<UnnamedColumn>asList(new ColumnOp("String_Node_Str",Arrays.<UnnamedColumn>asList(new BaseColumn("String_Node_Str","String_Node_Str"),new BaseColumn("String_Node_Str","String_Node_Str"))),new ColumnOp("String_Node_Str",Arrays.<UnnamedColumn>asList(new BaseColumn("String_Node_Str","String_Node_Str"),ConstantColumn.valueOf("String_Node_Str"))))),new ColumnOp("String_Node_Str",Arrays.<UnnamedColumn>asList(new BaseColumn("String_Node_Str","String_Node_Str"),ConstantColumn.valueOf("String_Node_Str"),ConstantColumn.valueOf("String_Node_Str"),ConstantColumn.valueOf("String_Node_Str"),ConstantColumn.valueOf("String_Node_Str"))))),new ColumnOp("String_Node_Str",Arrays.<UnnamedColumn>asList(new BaseColumn("String_Node_Str","String_Node_Str"),ConstantColumn.valueOf(5))))),new ColumnOp("String_Node_Str",Arrays.<UnnamedColumn>asList(new BaseColumn("String_Node_Str","String_Node_Str"),new ColumnOp("String_Node_Str",Arrays.<UnnamedColumn>asList(ConstantColumn.valueOf(5),ConstantColumn.valueOf(10))))))),new ColumnOp("String_Node_Str",Arrays.<UnnamedColumn>asList(new BaseColumn("String_Node_Str","String_Node_Str"),ConstantColumn.valueOf(1),ConstantColumn.valueOf(10))))),new ColumnOp("String_Node_Str",Arrays.<UnnamedColumn>asList(new BaseColumn("String_Node_Str","String_Node_Str"),ConstantColumn.valueOf("String_Node_Str"),ConstantColumn.valueOf("String_Node_Str"))))),new ColumnOp("String_Node_Str",Arrays.<UnnamedColumn>asList(new BaseColumn("String_Node_Str","String_Node_Str"),ConstantColumn.valueOf("String_Node_Str")))));
  ColumnOp columnOp3=new ColumnOp("String_Node_Str",Arrays.<UnnamedColumn>asList(new ColumnOp("String_Node_Str",Arrays.<UnnamedColumn>asList(new ColumnOp("String_Node_Str",Arrays.<UnnamedColumn>asList(new ColumnOp("String_Node_Str",Arrays.<UnnamedColumn>asList(new ColumnOp("String_Node_Str",Arrays.<UnnamedColumn>asList(new ColumnOp("String_Node_Str",Arrays.<UnnamedColumn>asList(new ColumnOp("String_Node_Str",Arrays.<UnnamedColumn>asList(new ColumnOp("String_Node_Str",Arrays.<UnnamedColumn>asList(new BaseColumn("String_Node_Str","String_Node_Str"),new BaseColumn("String_Node_Str","String_Node_Str"))),new ColumnOp("String_Node_Str",Arrays.<UnnamedColumn>asList(new BaseColumn("String_Node_Str","String_Node_Str"),ConstantColumn.valueOf("String_Node_Str"))))),new ColumnOp("String_Node_Str",Arrays.<UnnamedColumn>asList(new BaseColumn("String_Node_Str","String_Node_Str"),ConstantColumn.valueOf("String_Node_Str"),ConstantColumn.valueOf("String_Node_Str"),ConstantColumn.valueOf("String_Node_Str"),ConstantColumn.valueOf("String_Node_Str"))))),new ColumnOp("String_Node_Str",Arrays.<UnnamedColumn>asList(new BaseColumn("String_Node_Str","String_Node_Str"),ConstantColumn.valueOf(6))))),new ColumnOp("String_Node_Str",Arrays.<UnnamedColumn>asList(new BaseColumn("String_Node_Str","String_Node_Str"),new ColumnOp("String_Node_Str",Arrays.<UnnamedColumn>asList(ConstantColumn.valueOf(6),ConstantColumn.valueOf(10))))))),new ColumnOp("String_Node_Str",Arrays.<UnnamedColumn>asList(new BaseColumn("String_Node_Str","String_Node_Str"),ConstantColumn.valueOf(1),ConstantColumn.valueOf(15))))),new ColumnOp("String_Node_Str",Arrays.<UnnamedColumn>asList(new BaseColumn("String_Node_Str","String_Node_Str"),ConstantColumn.valueOf("String_Node_Str"),ConstantColumn.valueOf("String_Node_Str"))))),new ColumnOp("String_Node_Str",Arrays.<UnnamedColumn>asList(new BaseColumn("String_Node_Str","String_Node_Str"),ConstantColumn.valueOf("String_Node_Str")))));
  expected.addFilterByAnd(new ColumnOp("String_Node_Str",Arrays.<UnnamedColumn>asList(new ColumnOp("String_Node_Str",Arrays.<UnnamedColumn>asList(columnOp1,columnOp2)),columnOp3)));
  expected.addLimit(ConstantColumn.valueOf(1));
  assertEquals(expected,((CreateTableAsSelectNode)queryExecutionPlan.root.dependents.get(0)).selectQuery);
  stmt.execute("String_Node_Str");
  ExecutablePlanRunner.runTillEnd(new JdbcConnection(conn,new H2Syntax()),queryExecutionPlan);
  stmt.execute("String_Node_Str");
}