Description
This one is obscure.
Edit: not so obscure, see below. Without a local index it won't throw an exception, but select * will return an incorrect set of columns. So this is a general problem independent of local indexes.
> create table test3(pk1 integer not null primary key, v1 float, y.v1 varchar); No rows affected (1.179 seconds) > create local index l4 on test3(v1); No rows affected (11.253 seconds) > select * from test3 where v1 < 1; Error: ERROR 203 (22005): Type mismatch. expected: FLOAT but was: VARCHAR at column: V1 (state=22005,code=203) org.apache.phoenix.schema.ArgumentTypeMismatchException: ERROR 203 (22005): Type mismatch. expected: FLOAT but was: VARCHAR at column: V1 at org.apache.phoenix.compile.ProjectionCompiler.coerceIfNecessary(ProjectionCompiler.java:339) at org.apache.phoenix.compile.ProjectionCompiler.projectAllIndexColumns(ProjectionCompiler.java:258) at org.apache.phoenix.compile.ProjectionCompiler.compile(ProjectionCompiler.java:393) at org.apache.phoenix.compile.QueryCompiler.compileSingleFlatQuery(QueryCompiler.java:757) at org.apache.phoenix.compile.QueryCompiler.compileSingleQuery(QueryCompiler.java:676) at org.apache.phoenix.compile.QueryCompiler.compileSelect(QueryCompiler.java:253) at org.apache.phoenix.compile.QueryCompiler.compile(QueryCompiler.java:178) at org.apache.phoenix.optimize.QueryOptimizer.addPlan(QueryOptimizer.java:347) at org.apache.phoenix.optimize.QueryOptimizer.getApplicablePlansForSingleFlatQuery(QueryOptimizer.java:239) at org.apache.phoenix.optimize.QueryOptimizer.getApplicablePlans(QueryOptimizer.java:138) at org.apache.phoenix.optimize.QueryOptimizer.optimize(QueryOptimizer.java:116) at org.apache.phoenix.optimize.QueryOptimizer.optimize(QueryOptimizer.java:102) at org.apache.phoenix.jdbc.PhoenixStatement$1.call(PhoenixStatement.java:313) at org.apache.phoenix.jdbc.PhoenixStatement$1.call(PhoenixStatement.java:295) at org.apache.phoenix.call.CallRunner.run(CallRunner.java:53) at org.apache.phoenix.jdbc.PhoenixStatement.executeQuery(PhoenixStatement.java:294) at org.apache.phoenix.jdbc.PhoenixStatement.executeQuery(PhoenixStatement.java:287) at org.apache.phoenix.jdbc.PhoenixStatement.execute(PhoenixStatement.java:1930)
Attachments
Attachments
Issue Links
- links to