Github user kumarvishal09 commented on a diff in the pull request:
https://github.com/apache/carbondata/pull/2210#discussion_r184449793
--- Diff:
core/src/main/java/org/apache/carbondata/core/scan/collector/ResultCollectorFactory.java
---
@@ -45,31 +46,37 @@
* @return
*/
public static AbstractScannedResultCollector getScannedResultCollector(
- BlockExecutionInfo blockExecutionInfo) {
+ BlockExecutionInfo blockExecutionInfo, QueryStatisticsModel
queryStatisticsModel) {
--- End diff --
For one task we are creating only one QueryStatisticsModel even one task is
handling multiple block (in case of merge small files) . Passing in constructor
or keeping in blockexecutioninfo is same cost(same reference). Just to hold the
reference we are changing multiple classes constructor. BlockExecutionInfo is
also just a holder. If we add in abstract class constructor In future every
concrete class needs to maintain querystatisticsmodel even if it doesn't use
---