[
https://issues.apache.org/jira/browse/PHOENIX-5107?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16748249#comment-16748249
]
Thomas D'Silva commented on PHOENIX-5107:
-----------------------------------------
IMO we should just throw an exception saying this feature is not supported yet.
> Querying dynamic columns for an immutable table with
> SINGLE_CELL_ARRAY_WITH_OFFSETS storage scheme throws an exception
> ----------------------------------------------------------------------------------------------------------------------
>
> Key: PHOENIX-5107
> URL: https://issues.apache.org/jira/browse/PHOENIX-5107
> Project: Phoenix
> Issue Type: Bug
> Reporter: Chinmay Kulkarni
> Priority: Major
>
> Steps to repro:
>
> {{create immutable table t1 (a varchar, b integer primary key)
> IMMUTABLE_STORAGE_SCHEME = SINGLE_CELL_ARRAY_WITH_OFFSETS,
> COLUMN_ENCODED_BYTES = 1;}}
> {{upsert into t1 (a, b, dyn1 integer) values('ready', 10, 3);}}
> {{upsert into t1 (a, b, dyn1 integer, dyn2 varchar) values('steady', 20, 4,
> 'dummy1');}}
> {{upsert into t1 (a, b, dyn1 integer, dyn2 varchar, dyn3 integer)
> values('go', 30, 5, 'dummy2', 7);}}
> {{select a, b, dyn1, dyn2 from t1 (dyn1 integer, dyn2 varchar);}}
>
> The select query above throws the underlying exception:
>
> *org.apache.phoenix.schema.PTable$QualifierEncodingScheme$InvalidQualifierBytesException:
> Invalid number of qualifier bytes. Expected length: 4. Actual: 4*
> at
> org.apache.phoenix.schema.PTable$QualifierEncodingScheme.getReservedQualifier(PTable.java:524)
> at
> org.apache.phoenix.schema.PTable$QualifierEncodingScheme.access$300(PTable.java:293)
> at
> org.apache.phoenix.schema.PTable$QualifierEncodingScheme$2.decode(PTable.java:332)
> at
> org.apache.phoenix.expression.SingleCellColumnExpression.<init>(SingleCellColumnExpression.java:82)
> at
> org.apache.phoenix.schema.ColumnRef.newColumnExpression(ColumnRef.java:131)
> at
> org.apache.phoenix.schema.ColumnRef.newColumnExpression(ColumnRef.java:111)
> at org.apache.phoenix.execute.TupleProjector.<init>(TupleProjector.java:98)
> at
> org.apache.phoenix.compile.QueryCompiler.compileSingleFlatQuery(QueryCompiler.java:589)
> at
> org.apache.phoenix.compile.QueryCompiler.compileSingleQuery(QueryCompiler.java:510)
> at
> org.apache.phoenix.compile.QueryCompiler.compileSelect(QueryCompiler.java:195)
> at org.apache.phoenix.compile.QueryCompiler.compile(QueryCompiler.java:155)
> at
> org.apache.phoenix.jdbc.PhoenixStatement$ExecutableSelectStatement.compilePlan(PhoenixStatement.java:490)
> at
> org.apache.phoenix.jdbc.PhoenixStatement$ExecutableSelectStatement.compilePlan(PhoenixStatement.java:456)
> at org.apache.phoenix.jdbc.PhoenixStatement$1.call(PhoenixStatement.java:302)
> at org.apache.phoenix.jdbc.PhoenixStatement$1.call(PhoenixStatement.java:291)
> at org.apache.phoenix.call.CallRunner.run(CallRunner.java:53)
> at
> org.apache.phoenix.jdbc.PhoenixStatement.executeQuery(PhoenixStatement.java:290)
> at
> org.apache.phoenix.jdbc.PhoenixStatement.executeQuery(PhoenixStatement.java:283)
> at
> org.apache.phoenix.jdbc.PhoenixStatement.executeQuery(PhoenixStatement.java:1793)
--
This message was sent by Atlassian JIRA
(v7.6.3#76005)