Thomas D'Silva created PHOENIX-4846:
---------------------------------------

             Summary: WhereOptimizer.pushKeyExpressionsToScan() does not work 
correctly if the sort order of pk columns being filtered on changes
                 Key: PHOENIX-4846
                 URL: https://issues.apache.org/jira/browse/PHOENIX-4846
             Project: Phoenix
          Issue Type: Bug
    Affects Versions: 5.0.0, 4.14.0
            Reporter: Thomas D'Silva
             Fix For: 4.15.0, 5.1.0


{{ExpressionComparabilityWrapper}} should set the sort order based on 
{{childPart.getColumn()}} or else the attached test throws an 
IllegalArgumentException

{code}

java.lang.IllegalArgumentException: 4 > 3
at java.util.Arrays.copyOfRange(Arrays.java:3519)
at 
org.apache.hadoop.hbase.io.ImmutableBytesWritable.copyBytes(ImmutableBytesWritable.java:272)
at 
org.apache.phoenix.compile.WhereOptimizer.getTrailingRange(WhereOptimizer.java:329)
at org.apache.phoenix.compile.WhereOptimizer.clipRight(WhereOptimizer.java:350)
at 
org.apache.phoenix.compile.WhereOptimizer.pushKeyExpressionsToScan(WhereOptimizer.java:237)
at org.apache.phoenix.compile.WhereCompiler.compile(WhereCompiler.java:157)
at org.apache.phoenix.compile.WhereCompiler.compile(WhereCompiler.java:108)
at 
org.apache.phoenix.compile.QueryCompiler.compileSingleFlatQuery(QueryCompiler.java:556)
{code}


Also in {{pushKeyExpressionsToScan()}} we cannot extract pk column nodes from 
the where clause if the sort order of the columns changes. 




--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

Reply via email to