in bigquery-antipattern-recognition/src/main/java/com/google/zetasql/toolkit/antipattern/analyzer/visitors/joinorder/JoinOrderVisitor.java [78:88]
private void sortTablesByNumRows(List<TableReference> tablesInJoin) {
Comparator<TableReference> comparator = (table1, table2) -> {
BigInteger value1 = this.service.fetchTable(table1.getProjectId(),
table1.getDatasetId() + "." + table1.getTableId()).get().getNumRows();
BigInteger value2 = this.service.fetchTable(table2.getProjectId(),
table2.getDatasetId() + "." + table2.getTableId()).get().getNumRows();
return value1.compareTo(value2);
};
Collections.sort(tablesInJoin, comparator);
Collections.reverse(tablesInJoin);
}