[
https://issues.apache.org/jira/browse/PHOENIX-650?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Gabriel Reid resolved PHOENIX-650.
----------------------------------
Resolution: Fixed
Bulk resolve of closed issues imported from GitHub. This status was reached by
first re-opening all closed imported issues and then resolving them in bulk.
> IN Clause query failing for a phoenix table with secondary immutable index
> and columns with UNSIGNED_INT data type.
> -------------------------------------------------------------------------------------------------------------------
>
> Key: PHOENIX-650
> URL: https://issues.apache.org/jira/browse/PHOENIX-650
> Project: Phoenix
> Issue Type: Task
> Affects Versions: 2.1.1
> Reporter: Samarth Jain
> Assignee: Samarth Jain
>
> <p>
> <b>Case 1: Index on cls. IN clause for math - PASSES</b>
> <br></br>
> create table if not exists new_version_course(id char(13) not null primary
> key, cls unsigned_int, math unsigned_int,os unsigned_int,ds unsigned_int,c
> unsigned_int, java unsigned_int,db unsigned_int,summary varchar(1000))
> IMMUTABLE_ROWS=true split on ('06-250','06-500', '06-750');
> </p>
> <p>
> create index new_version_course_cls_idx on new_version_course(cls)
> include(math,os,ds,c,java,db,summary);
> </p>
> <p>
> select * from new_version_course where math in(88,99,98)
> </p>
> <p>
> <b>Case 2: Index on math. IN clause for math - FAILS</b>
> <br></br>
> create table if not exists new_version_course(id char(13) not null primary
> key, cls unsigned_int, math unsigned_int,os unsigned_int,ds unsigned_int,c
> unsigned_int, java unsigned_int,db unsigned_int,summary varchar(1000))
> IMMUTABLE_ROWS=true split on ('06-250','06-500', '06-750');
> </p>
> <p>
> create index new_version_course_math_idx on new_version_course(math)
> include(cls,os,ds,c,java,db,summary);
> </p>
> <p>
> select * from new_version_course where math in(88,99,98)
> </p>
> <pre><code>
> Exception:
> com.salesforce.phoenix.schema.IllegalDataException
> at
> com.salesforce.phoenix.schema.PDataType$UnsignedIntCodec.decodeInt(PDataType.java:3889)
> at
> com.salesforce.phoenix.schema.PDataType$14.toObject(PDataType.java:2078)
> at com.salesforce.phoenix.schema.PDataType.toObject(PDataType.java:4585)
> at com.salesforce.phoenix.schema.PDataType.toObject(PDataType.java:4564)
> at com.salesforce.phoenix.schema.PDataType.toObject(PDataType.java:4573)
> at
> com.salesforce.phoenix.schema.PDataType.coerceBytes(PDataType.java:4519)
> at
> com.salesforce.phoenix.compile.WhereOptimizer$KeyExpressionVisitor$2.getKeyRange(WhereOptimizer.java:372)
> at
> com.salesforce.phoenix.compile.WhereOptimizer$KeyExpressionVisitor.visitLeave(WhereOptimizer.java:758)
> at
> com.salesforce.phoenix.compile.WhereOptimizer$KeyExpressionVisitor.visitLeave(WhereOptimizer.java:259)
> at
> com.salesforce.phoenix.expression.InListExpression.accept(InListExpression.java:250)
> at
> com.salesforce.phoenix.compile.WhereOptimizer.pushKeyExpressionsToScan(WhereOptimizer.java:118)
> at
> com.salesforce.phoenix.compile.WhereCompiler.compileWhereClause(WhereCompiler.java:111)
> at
> com.salesforce.phoenix.compile.WhereCompiler.compile(WhereCompiler.java:90)
> at
> com.salesforce.phoenix.compile.QueryCompiler.compile(QueryCompiler.java:125)
> at
> com.salesforce.phoenix.optimize.QueryOptimizer.addPlan(QueryOptimizer.java:138)
> at
> com.salesforce.phoenix.optimize.QueryOptimizer.optimize(QueryOptimizer.java:65)
> at
> com.salesforce.phoenix.optimize.QueryOptimizer.optimize(QueryOptimizer.java:39)
> at
> com.salesforce.phoenix.jdbc.PhoenixStatement$ExecutableSelectStatement.optimizePlan(PhoenixStatement.java:223)
> at
> com.salesforce.phoenix.jdbc.PhoenixStatement$ExecutableSelectStatement.execute(PhoenixStatement.java:212)
> at
> com.salesforce.phoenix.jdbc.PhoenixStatement.execute(PhoenixStatement.java:1014)
> at
> net.sourceforge.squirrel_sql.client.session.StatementWrapper.execute(StatementWrapper.java:165)
> at
> net.sourceforge.squirrel_sql.client.session.SQLExecuterTask.processQuery(SQLExecuterTask.java:362)
> at
> net.sourceforge.squirrel_sql.client.session.SQLExecuterTask.run(SQLExecuterTask.java:205)
> at
> net.sourceforge.squirrel_sql.fw.util.TaskExecuter.run(TaskExecuter.java:82)
> at java.lang.Thread.run(Thread.java:679)
> </core></pre>
--
This message was sent by Atlassian JIRA
(v6.2#6252)