GitHub user ravipesala opened a pull request:

    https://github.com/apache/carbondata/pull/2616

    [HOTFIX]Fixed int overflow and comparison gone wrong during blocklet min/max

    Problem: During calculating min/max for blocklet, it needs to calculate 
from all the pages. During that comparison, it is typecasting to int and 
overflows, so there is a chance the negative becomes positive and positive 
become negative. That's why min max of long comes wrong for bigger values. 
    Solution: Don't typecast directly, instead check first the negative or 
positive and then return.
    
    Be sure to do all of the following checklist to help us incorporate 
    your contribution quickly and easily:
    
     - [ ] Any interfaces changed?
     
     - [ ] Any backward compatibility impacted?
     
     - [ ] Document update required?
    
     - [ ] Testing done
            Please provide details on 
            - Whether new unit test cases have been added or why no new tests 
are required?
            - How it is tested? Please attach test report.
            - Is it a performance related change? Please attach the performance 
test report.
            - Any additional information to help reviewers in testing this 
change.
           
     - [ ] For large changes, please consider breaking it into sub-tasks under 
an umbrella JIRA. 
    


You can merge this pull request into a Git repository by running:

    $ git pull https://github.com/ravipesala/incubator-carbondata 
blocklet-min-max-issue

Alternatively you can review and apply these changes as the patch at:

    https://github.com/apache/carbondata/pull/2616.patch

To close this pull request, make a commit to your master/trunk branch
with (at least) the following in the commit message:

    This closes #2616
    
----
commit a99d0516ee06a285f8be3880d7005bf161f1c940
Author: ravipesala <ravi.pesala@...>
Date:   2018-08-07T15:49:36Z

    Fixed int overflow and comparasion gone wrong during blocklet min/max

----


---

Reply via email to