GitHub user kunal642 opened a pull request:
https://github.com/apache/carbondata/pull/1373 [CARBONDATA-1490] Fixed memory allocation for carbon row
Analysis: While creating carbon row the space for measures is assigned based on outputLength and not on measureCount which will tend to allocate more space than is actually needed.
**outputLength = measureCount + ((noDictCount + complexCount) > 0 ? 1 : 0) + 1**
When the table has 1 complex column then measureCount=0, noDictCount=0, complexCount=1
therefore, outputLength = 2
Even if there are no measure columns the measure object is created with 2 null values.
Solution: Create measure object based on the measureCount.
You can merge this pull request into a Git repository by running:
$ git pull
https://github.com/kunal642/carbondata CARBONDATA-1490
Alternatively you can review and apply these changes as the patch at:
https://github.com/apache/carbondata/pull/1373.patchTo close this pull request, make a commit to your master/trunk branch
with (at least) the following in the commit message:
This closes #1373
----
commit 13f55ae9a2adc862be4367c8cdf265a18ad4fd58
Author: kunal642 <
[hidden email]>
Date: 2017-09-20T05:32:00Z
fixed memory allocation for carbon row
----
---