[ https://issues.apache.org/jira/browse/PHOENIX-6854?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Kadir Ozdemir updated PHOENIX-6854: ----------------------------------- Description: With an index hint, global indexes can be used for queries with uncovered columns. However, when the data table is salted, Phoenix does not project the columns correctly for queries with uncovered columns, and thus the result set returns wrong columns. For example, the following select statement returns 'b' instead of 'bcde'. create table T1 (id varchar not null primary key, val1 varchar, val2 varchar, val3 varchar) SALT_BUCKETS=4; upsert into T1 values ('b', 'bc', 'bcd', 'bcde'); CREATE INDEX I1 on T1 (val1) include (val2); SELECT /{*}+ INDEX(T1 I1){*}/ val3 from T1 WHERE val1 = 'bc'; was: With an index hint, global indexes can be used for queries with uncovered columns. However, when the data table is salted, Phoenix does not project the columns correctly for for queries with uncovered columns, and thus the result set returns wrong columns. For example, the following select statement returns 'b' instead of 'bcde'. create table T1 (id varchar not null primary key, val1 varchar, val2 varchar, val3 varchar) SALT_BUCKETS=4; upsert into T1 values ('b', 'bc', 'bcd', 'bcde'); CREATE INDEX I1 on T1 (val1) include (val2); SELECT /*+ INDEX(T1 I1)*/ val3 from T1 WHERE val1 = 'bc'; > Salted global indexes do not work for queries with uncovered columns > -------------------------------------------------------------------- > > Key: PHOENIX-6854 > URL: https://issues.apache.org/jira/browse/PHOENIX-6854 > Project: Phoenix > Issue Type: Bug > Reporter: Kadir Ozdemir > Priority: Major > Fix For: 5.2.0, 5.1.3 > > > With an index hint, global indexes can be used for queries with uncovered > columns. However, when the data table is salted, Phoenix does not project the > columns correctly for queries with uncovered columns, and thus the result set > returns wrong columns. For example, the following select statement returns > 'b' instead of 'bcde'. > create table T1 (id varchar not null primary key, val1 varchar, val2 varchar, > val3 varchar) SALT_BUCKETS=4; > upsert into T1 values ('b', 'bc', 'bcd', 'bcde'); > CREATE INDEX I1 on T1 (val1) include (val2); > SELECT /{*}+ INDEX(T1 I1){*}/ val3 from T1 WHERE val1 = 'bc'; -- This message was sent by Atlassian Jira (v8.20.10#820010)