Nemesis123925 commented on PR #11941: URL: https://github.com/apache/pinot/pull/11941#issuecomment-1811886481
Roger that Here is the solution I suggest In `QueriesTestUtils.java`, I write two new functions: ``` public static void testExplainSegmentsResult(BrokerResponseNative brokerResponse, ResultTable expectedResultTable) { assertEquals(brokerResponse.getResultTable().getDataSchema(), expectedResultTable.getDataSchema()); validateExplainedRows(brokerResponse.getResultTable().getRows(), expectedResultTable.getRows()); } private static void validateExplainedRows(List<Object[]> actual, List<Object[]> expected) { assertEquals(actual.size(), expected.size()); for (int j = 0; j < actual.size(); j++) { Object[] act = actual.get(j); Object[] exp = expected.get(j); String attributeToSort = "PROJECT"; assertEquals(act.length, exp.length); if (act[0].toString().startsWith(attributeToSort)) { char[] act0 = act[0].toString().toCharArray(); char[] exp0 = exp[0].toString().toCharArray(); Arrays.sort(act0); Arrays.sort(exp0); act[0] = new String(act0); exp[0] = new String(exp0); } assertEquals(act, exp); } } ``` In `ExplainPlanQueriesTest.java`, I redirect the `checkWithQueryExecutor` to call `testExplainSegmentsResult` If apply this fix, instead of fixing all `27` flaky tests in `ExplainPlanQueriesTest.java`, this will fix `14` of them, which are ``` org.apache.pinot.queries.ExplainPlanQueriesTest#testSelect org.apache.pinot.queries.ExplainPlanQueriesTest#testSelectAggregate org.apache.pinot.queries.ExplainPlanQueriesTest#testSelectAggregateUsingFilterGroupBy org.apache.pinot.queries.ExplainPlanQueriesTest#testSelectAggregateUsingFilterGroupByVerbose org.apache.pinot.queries.ExplainPlanQueriesTest#testSelectAggregateUsingFilterIndex org.apache.pinot.queries.ExplainPlanQueriesTest#testSelectAggregateUsingFilterIndexGroupBy org.apache.pinot.queries.ExplainPlanQueriesTest#testSelectAggregateUsingFilterIndexGroupByHaving org.apache.pinot.queries.ExplainPlanQueriesTest#testSelectAggregateUsingFilterIndexGroupByOrderBy org.apache.pinot.queries.ExplainPlanQueriesTest#testSelectAggregateUsingFilterOnTextIndexColumn org.apache.pinot.queries.ExplainPlanQueriesTest#testSelectColumnUsingFilterOnRangeIndexColumn org.apache.pinot.queries.ExplainPlanQueriesTest#testSelectColumnsUsingFilter org.apache.pinot.queries.ExplainPlanQueriesTest#testSelectColumnsUsingFilterOnInvertedIndexColumn org.apache.pinot.queries.ExplainPlanQueriesTest#testSelectColumnsVariationsOfAndOperators org.apache.pinot.queries.ExplainPlanQueriesTest#testSelectColumnsVariationsOfOrOperators ``` If you guys think this fix is good, I will push the new commit. -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: commits-unsubscr...@pinot.apache.org For queries about this service, please contact Infrastructure at: us...@infra.apache.org --------------------------------------------------------------------- To unsubscribe, e-mail: commits-unsubscr...@pinot.apache.org For additional commands, e-mail: commits-h...@pinot.apache.org