Github user xuchuanyin commented on a diff in the pull request:
https://github.com/apache/carbondata/pull/2252#discussion_r190222169
--- Diff:
core/src/main/java/org/apache/carbondata/core/scan/result/BlockletScannedResult.java
---
@@ -369,6 +379,9 @@ public void fillDataChunks() {
long startTime = System.currentTimeMillis();
for (int i = 0; i < dimensionColumnPages.length; i++) {
if (dimensionColumnPages[i][pageCounter] == null &&
dimRawColumnChunks[i] != null) {
+ // the long string columns is at the end
--- End diff --
@kumarvishal09
During query, we can get the dimensions that this query requires.
Also we can know how many longStringColumns this query requires.
While writing dimension columns, we write the normal-shortStringColumns
first and longStringColumns at last.
So during query, suppose we use `n` dimensions containing `m`
longStringColumns.
Then, the first `n-m` columns will be normal-shortStringColumns and the
last `m` columns will be longStringColumns.
This line of code can be found below.
---