Supports flexible degree of parallelism. Detailed list of changes include: - Add the IClusterInfoCollector interface and feed that to the compiler; - Add the number of cores into the heartbeat; - Add partition calculation in APIFramework; - Fix partitioning property requirements in binary operators such as Join and UnionAll; - Fix PushSubplanIntoGroupByRule for type propagation; - Fix InlineLeftNtsInSubplanJoinFlatteningVisitor for the returned top join operator; - Add unit test for partition calculation in APIFrameworkTest - Add integration test SqlppExecutionFullParallelismIT, SqlppExecutionLessParallelismIT, AqlExecutionFullParallelismIT, and AqlExecutionLessParallelismIT for different parallelism settings; - Refactor AQLExecutionTest and SqlppExecutionTest; - Separate one cluster state test out from AqlExecutionTest.
Use backticks instead of double quotes for delimited identifiers in SQL++. Change-Id: I2db58d68e8e28befa4105504c261b101fa0285af Reviewed-on: https://asterix-gerrit.ics.uci.edu/909 Reviewed-by: Jenkins <jenkins@fulliautomatix.ics.uci.edu> Tested-by: Jenkins <jenkins@fulliautomatix.ics.uci.edu> Reviewed-by: Till Westmann <tillw@apache.org>