Program: 11197
Project: 11197
Buggy source:
@Test public void basicSelectWithOwnLimitTest(){
  ClusterName targetCluster=new ClusterName("String_Node_Str");
  List<LogicalStep> logicalSteps=new ArrayList<>();
  TableName tableName=new TableName("String_Node_Str","String_Node_Str");
  List<ColumnName> columnList=new ArrayList<>();
  ColumnName columnName=new ColumnName(tableName,"String_Node_Str");
  columnList.add(columnName);
  Project project=new Project(Operations.PROJECT,tableName,targetCluster,columnList);
  Selector selector=new ColumnSelector(new ColumnName("String_Node_Str","String_Node_Str","String_Node_Str"));
  Selector rightTerm=new StringSelector("String_Node_Str");
  Selector selector2=new ColumnSelector(new ColumnName("String_Node_Str","String_Node_Str","String_Node_Str"));
  Selector rightTerm2=new StringSelector("String_Node_Str");
  Relation relation2=new Relation(selector2,Operator.ASSIGN,rightTerm2);
  Filter filter2=new Filter(Operations.SELECT_LIMIT,relation2);
  Relation relation=new Relation(selector,Operator.ASSIGN,rightTerm);
  Filter filter=new Filter(Operations.SELECT_LIMIT,relation);
  Limit limit=new Limit(Operations.SELECT_LIMIT,50);
  filter2.setNextStep(limit);
  filter.setNextStep(filter2);
  project.setNextStep(filter);
  logicalSteps.add(project);
  LogicalWorkflow workflow=new LogicalWorkflow(logicalSteps);
  Map<String,Session> sessions=new HashMap<>();
  sessions.put("String_Node_Str",this._session);
  CassandraQueryEngine cqe=new CassandraQueryEngine(sessions,100);
  QueryResult qr=null;
  try {
    qr=cqe.execute(workflow);
  }
 catch (  ConnectorException e) {
    Assert.fail(e.getMessage());
  }
  String value="String_Node_Str";
  for (  Row row : qr.getResultSet()) {
    Cell cell=row.getCell("String_Node_Str");
    value=cell.getValue().toString();
  }
  assertEquals(value,"String_Node_Str");
  assertEquals(cqe.parseQuery(),"String_Node_Str");
}

Fixed version (ground truth):
@Test public void basicSelectWithOwnLimitTest(){
  ClusterName targetCluster=new ClusterName("String_Node_Str");
  List<LogicalStep> logicalSteps=new ArrayList<>();
  TableName tableName=new TableName("String_Node_Str","String_Node_Str");
  List<ColumnName> columnList=new ArrayList<>();
  ColumnName columnName=new ColumnName(tableName,"String_Node_Str");
  columnList.add(columnName);
  Project project=new Project(Operations.PROJECT,tableName,targetCluster,columnList);
  Selector selector=new ColumnSelector(new ColumnName("String_Node_Str","String_Node_Str","String_Node_Str"));
  Selector rightTerm=new StringSelector("String_Node_Str");
  Selector selector2=new ColumnSelector(new ColumnName("String_Node_Str","String_Node_Str","String_Node_Str"));
  Selector rightTerm2=new StringSelector("String_Node_Str");
  Relation relation2=new Relation(selector2,Operator.ASSIGN,rightTerm2);
  Filter filter2=new Filter(Operations.SELECT_LIMIT,relation2);
  Relation relation=new Relation(selector,Operator.ASSIGN,rightTerm);
  Filter filter=new Filter(Operations.SELECT_LIMIT,relation);
  Limit limit=new Limit(Operations.SELECT_LIMIT,50);
  filter2.setNextStep(limit);
  filter.setNextStep(filter2);
  project.setNextStep(filter);
  logicalSteps.add(project);
  LogicalWorkflow workflow=new LogicalWorkflow(logicalSteps);
  Map<String,Session> sessions=new HashMap<>();
  sessions.put("String_Node_Str",this._session);
  CassandraQueryEngine cqe=new CassandraQueryEngine(sessions,100);
  QueryResult qr=null;
  try {
    qr=cqe.execute(workflow);
  }
 catch (  ConnectorException e) {
    Assert.fail(e.getMessage());
  }
  String value="String_Node_Str";
  for (  Row row : qr.getResultSet()) {
    Cell cell=row.getCell("String_Node_Str");
    value=cell.getValue().toString();
  }
  assertEquals(value,"String_Node_Str","String_Node_Str");
  assertEquals(cqe.parseQuery(),"String_Node_Str","String_Node_Str");
}