Hi,
I am using Phoenix 4.4 and when executing the below query i get an
exception as below,
I have indexes on the below "some_table" on column report_time in all the
indexes created.
Delete from some_table where TO_NUMBER(report_time) <= 1455937500000
java.sql.SQLException: ERROR 1027 (42Y86): All columns referenced in a
WHERE clause must be available in every index for a table with immutable
rows. tableName=some_table
at
org.apache.phoenix.exception.SQLExceptionCode$Factory$1.newException(SQLExceptionCode.java:386)
at
org.apache.phoenix.exception.SQLExceptionInfo.buildException(SQLExceptionInfo.java:145)
at
org.apache.phoenix.compile.DeleteCompiler.compile(DeleteCompiler.java:389)
at
org.apache.phoenix.jdbc.PhoenixStatement$ExecutableDeleteStatement.compilePlan(PhoenixStatement.java:546)
at
org.apache.phoenix.jdbc.PhoenixStatement$ExecutableDeleteStatement.compilePlan(PhoenixStatement.java:534)
at
org.apache.phoenix.jdbc.PhoenixStatement$2.call(PhoenixStatement.java:302)
at
org.apache.phoenix.jdbc.PhoenixStatement$2.call(PhoenixStatement.java:295)
at org.apache.phoenix.call.CallRunner.run(CallRunner.java:53)
at
org.apache.phoenix.jdbc.PhoenixStatement.executeMutation(PhoenixStatement.java:293)
at
org.apache.phoenix.jdbc.PhoenixStatement.execute(PhoenixStatement.java:1247)
at sqlline.Commands.execute(Commands.java:822)
at sqlline.Commands.sql(Commands.java:732)
at sqlline.SqlLine.dispatch(SqlLine.java:808)
at sqlline.SqlLine.begin(SqlLine.java:681)
at sqlline.SqlLine.start(SqlLine.java:398)
at sqlline.SqlLine.main(SqlLine.java:292)
Any Idea what that error exactly meant?
Thanks,
Nanda