Program: 33640
Project: 33640
Buggy source:
@Test public void testTwoProjectsJoinedAndSelectTest() throws UnsupportedException, ExecutionException {
  List<LogicalStep> stepList=new LinkedList<>();
  Project projectLeft=createProject(MONGO_CLUSTERNAME_CONSTANT,KEYSPACE,MYTABLE1_CONSTANT,Arrays.asList(AUTHOR_CONSTANT,DESCRIPTION_CONSTANT,TITLE_CONSTANT,YEAR_CONSTANT));
  Project projectRight=createProject(MONGO_CLUSTERNAME_CONSTANT,KEYSPACE,MYTABLE2_CONSTANT,Arrays.asList(AUTHOR_CONSTANT,AGE_CONSTANT));
  Join join=createJoin("String_Node_Str",createColumn(KEYSPACE,MYTABLE1_CONSTANT,AUTHOR_CONSTANT),createColumn(KEYSPACE,MYTABLE2_CONSTANT,AUTHOR_CONSTANT));
  join.setNextStep(createSelect(Arrays.asList(createColumn(KEYSPACE,MYTABLE1_CONSTANT,AUTHOR_CONSTANT),createColumn(KEYSPACE,MYTABLE2_CONSTANT,AUTHOR_CONSTANT),createColumn(KEYSPACE,MYTABLE2_CONSTANT,AGE_CONSTANT),createColumn(KEYSPACE,MYTABLE1_CONSTANT,DESCRIPTION_CONSTANT)),Arrays.asList(AUTHOR_ALIAS_CONSTANT,AUTHOR_ALIAS2_CONSTANT,DESCRIPTION_ALIAS_CONSTANT,AGE_ALIAS_CONSTANT)));
  projectLeft.setNextStep(join);
  projectRight.setNextStep(join);
  stepList.add(projectLeft);
  stepList.add(projectRight);
  LogicalWorkflow logicalWorkflow=new LogicalWorkflow(stepList);
  QueryResult result=deepQueryEngine.execute(logicalWorkflow);
  List<ColumnMetadata> columnsMetadata=result.getResultSet().getColumnMetadata();
  List<Row> rowsList=result.getResultSet().getRows();
  assertEquals("String_Node_Str",4,columnsMetadata.size());
  assertEquals("String_Node_Str",74,rowsList.size());
  assertEquals("String_Node_Str",KEYSPACE + "String_Node_Str" + MYTABLE1_CONSTANT+ "String_Node_Str"+ AUTHOR_CONSTANT,columnsMetadata.get(0).getColumnName());
  assertEquals("String_Node_Str",KEYSPACE + "String_Node_Str" + MYTABLE1_CONSTANT,columnsMetadata.get(0).getTableName());
  for (  Row row : rowsList) {
    assertEquals("String_Node_Str",3,row.size());
    assertNotNull("String_Node_Str",row.getCell(AUTHOR_ALIAS_CONSTANT));
  }
}

Fixed version (ground truth):
@Test public void testTwoProjectsJoinedAndSelectTest() throws UnsupportedException, ExecutionException {
  List<LogicalStep> stepList=new LinkedList<>();
  Project projectLeft=createProject(MONGO_CLUSTERNAME_CONSTANT,KEYSPACE,MYTABLE1_CONSTANT,Arrays.asList(AUTHOR_CONSTANT,DESCRIPTION_CONSTANT,TITLE_CONSTANT,YEAR_CONSTANT));
  Project projectRight=createProject(MONGO_CLUSTERNAME_CONSTANT,KEYSPACE,MYTABLE2_CONSTANT,Arrays.asList(AUTHOR_CONSTANT,AGE_CONSTANT));
  Join join=createJoin("String_Node_Str",createColumn(KEYSPACE,MYTABLE1_CONSTANT,AUTHOR_CONSTANT),createColumn(KEYSPACE,MYTABLE2_CONSTANT,AUTHOR_CONSTANT));
  join.setNextStep(createSelect(Arrays.asList(createColumn(KEYSPACE,MYTABLE1_CONSTANT,AUTHOR_CONSTANT),createColumn(KEYSPACE,MYTABLE2_CONSTANT,AUTHOR_CONSTANT),createColumn(KEYSPACE,MYTABLE2_CONSTANT,AGE_CONSTANT),createColumn(KEYSPACE,MYTABLE1_CONSTANT,DESCRIPTION_CONSTANT)),Arrays.asList(AUTHOR_ALIAS_CONSTANT,AUTHOR_ALIAS2_CONSTANT,DESCRIPTION_ALIAS_CONSTANT,AGE_ALIAS_CONSTANT)));
  projectLeft.setNextStep(join);
  projectRight.setNextStep(join);
  stepList.add(projectLeft);
  stepList.add(projectRight);
  LogicalWorkflow logicalWorkflow=new LogicalWorkflow(stepList);
  QueryResult result=deepQueryEngine.execute(logicalWorkflow);
  List<ColumnMetadata> columnsMetadata=result.getResultSet().getColumnMetadata();
  List<Row> rowsList=result.getResultSet().getRows();
  assertEquals("String_Node_Str",4,columnsMetadata.size());
  assertEquals("String_Node_Str",72,rowsList.size());
  assertEquals("String_Node_Str",KEYSPACE + "String_Node_Str" + MYTABLE1_CONSTANT+ "String_Node_Str"+ AUTHOR_CONSTANT,columnsMetadata.get(0).getColumnName());
  assertEquals("String_Node_Str",KEYSPACE + "String_Node_Str" + MYTABLE1_CONSTANT,columnsMetadata.get(0).getTableName());
  for (  Row row : rowsList) {
    assertEquals("String_Node_Str",3,row.size());
    assertNotNull("String_Node_Str",row.getCell(AUTHOR_ALIAS_CONSTANT));
  }
}