ColumnStatsSemanticAnalyzer.getPartKeyValuePairsFromAST() gets ((ASTNode) tree.getChild(0) in different order between Java 7 and Java 8. The order is different in HiveParser.statement() itself in ParseDriver.parse() so this difference comes from antlr library.
Generated java version specific output.

PrintCompletedTasksHook prints completed task list, which depends on the list of tasks added to runnable task list in DriverContext. Some on these tasks may get filtered. We see that different tasks are getting filtered out by the condition resolver in ConditionTask in Java 8 compared to Java 7.

ConditionalTask.execute() calls ConditionalResolverCommonJoin.resolveDriverAlias() via getTasks(), which returns a single task based on task to alias map. The next mapred task in the task list gets filtered out by the resolver in ConditionalTask.resolveTask(). In other words, the the mapred task that shows up first will be kept and the next one will be filtered. Converted task to alias map to an insert order map so order is same with Java 8 and Java 7.