Github user ravipesala commented on a diff in the pull request:
https://github.com/apache/carbondata/pull/2819#discussion_r226863624
--- Diff:
integration/spark-datasource/src/main/scala/org/apache/carbondata/spark/vectorreader/VectorizedCarbonRecordReader.java
---
@@ -290,12 +296,24 @@ public void initBatch(MemoryMode memMode, StructType
partitionColumns,
}
}
CarbonColumnVector[] vectors = new CarbonColumnVector[fields.length];
- boolean[] filteredRows = new boolean[vectorProxy.numRows()];
- for (int i = 0; i < fields.length; i++) {
- vectors[i] = new ColumnarVectorWrapper(vectorProxy, filteredRows, i);
- if (isNoDictStringField[i]) {
- if (vectors[i] instanceof ColumnarVectorWrapper) {
- ((ColumnarVectorWrapper) vectors[i]).reserveDictionaryIds();
+ boolean[] filteredRows = null;
+ if (queryModel.isDirectVectorFill()) {
+ for (int i = 0; i < fields.length; i++) {
+ vectors[i] = new ColumnarVectorWrapperDirect(vectorProxy, i);
+ if (isNoDictStringField[i]) {
+ if (vectors[i] instanceof ColumnarVectorWrapperDirect) {
--- End diff --
removed
---