diff --git a/core/src/main/java/org/apache/carbondata/core/datastore/page/encoding/adaptive/AdaptiveCodec.java b/core/src/main/java/org/apache/carbondata/core/datastore/page/encoding/adaptive/AdaptiveCodec.java index da57e8c8ee8..27e2a9d8c18 100644 --- a/core/src/main/java/org/apache/carbondata/core/datastore/page/encoding/adaptive/AdaptiveCodec.java +++ b/core/src/main/java/org/apache/carbondata/core/datastore/page/encoding/adaptive/AdaptiveCodec.java @@ -241,6 +241,7 @@ public byte[] encodeAndCompressPage(ColumnPage input, ColumnPageValueConverter c } ColumnPage columnPage = getSortedColumnPageIfRequired(input); columnPage.convertValue(converter); + columnPage.freeMemory(); byte[] result = encodedPage.compress(compressor); return result; } diff --git a/integration/spark-datasource/src/main/scala/org/apache/carbondata/spark/vectorreader/VectorizedCarbonRecordReader.java b/integration/spark-datasource/src/main/scala/org/apache/carbondata/spark/vectorreader/VectorizedCarbonRecordReader.java index 1bde17d5d80..82a453104f1 100644 --- a/integration/spark-datasource/src/main/scala/org/apache/carbondata/spark/vectorreader/VectorizedCarbonRecordReader.java +++ b/integration/spark-datasource/src/main/scala/org/apache/carbondata/spark/vectorreader/VectorizedCarbonRecordReader.java @@ -161,8 +161,8 @@ public void initialize(InputSplit inputSplit, TaskAttemptContext taskAttemptCont @Override public void close() throws IOException { - logStatistics(rowCount, queryModel.getStatisticsRecorder()); if (vectorProxy != null) { + logStatistics(rowCount, queryModel.getStatisticsRecorder()); vectorProxy.close(); vectorProxy = null; } @@ -198,7 +198,7 @@ public boolean nextKeyValue() throws IOException, InterruptedException { @Override public Object getCurrentValue() throws IOException, InterruptedException { if (returnColumnarBatch) { - int value = vectorProxy.numRows(); + int value = carbonColumnarBatch.getActualSize(); rowCount += value; if (inputMetricsStats != null) { inputMetricsStats.incrementRecordRead((long) value);