[ https://issues.apache.org/jira/browse/PHOENIX-5833?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Daniel Wong updated PHOENIX-5833: --------------------------------- Summary: Incorrect results with RVCs and AND operator (was: Incorrect results with LIKE operator) > Incorrect results with RVCs and AND operator > -------------------------------------------- > > Key: PHOENIX-5833 > URL: https://issues.apache.org/jira/browse/PHOENIX-5833 > Project: Phoenix > Issue Type: Bug > Components: core > Affects Versions: 4.15.0 > Reporter: Bharath Vissapragada > Priority: Critical > > Phoenix version: 4.15-HBase-1.5 > -- Create a test table and populate a couple of rows. > {noformat} > create table repro_bug(a varchar(10) not null, b varchar(10) not null, c > varchar(10) not null constraint pk primary key(a, b, c)); > upsert into repro_bug values('abc', 'def', 'RRSQ_IMKKL'); > upsert into repro_bug values('abc', 'def', 'RRS_ZYTDT'); > select * from repro_bug; > +------+------+-------------+ > | A | B | C | > +------+------+-------------+ > | abc | def | RRSQ_IMKKL | > | abc | def | RRS_ZYTDT | > +------+------+-------------+ > {noformat} > -- Query 1 - Look for rows where C has a certain prefix - Returns correct > result > {noformat} > select A, B, C from REPRO_BUG where C like 'RRS\\_%'; > +------+------+------------+ > | A | B | C | > +------+------+------------+ > | abc | def | RRS_ZYTDT | > +------+------+------------+ > {noformat} > -- Query 2 - Look for rows where (a, b, c) > first row - Returns correct > result > {noformat} > select A, B, C from REPRO_BUG where (A, B, C) > ('abc', 'def', 'RRSQ_IMKKL') > +------+------+------------+ > | A | B | C | > +------+------+------------+ > | abc | def | RRS_ZYTDT | > +------+------+------------+ > {noformat} > -- Query 3 - Combine the filters from Query 1 and Query2 - Returns incorrect > result.. Ideally it should return the same row as above. > {noformat} > select A, B, C from REPRO_BUG where (A, B, C) > ('abc', 'def', 'RRSQ_IMKKL') > AND C like 'RRS\\_%'; > +----+----+----+ > | A | B | C | > +----+----+----+ > +----+----+----+ > {noformat} > -- Explain for the above incase someone is interested. > {noformat} > explain select A, B, C from REPRO_BUG where (A, B, C) > ('abc', 'def', > 'RRSQ_IMKKL') AND C like 'RRS\\_%'; > +----------------------------------------------------------------------------------------+-----------------+----------------+--------------+ > | PLAN > | EST_BYTES_READ | EST_ROWS_READ | EST_INFO_TS | > +----------------------------------------------------------------------------------------+-----------------+----------------+--------------+ > | CLIENT 1-CHUNK PARALLEL 1-WAY ROUND ROBIN RANGE SCAN OVER REPRO_BUG > ['abcdef'] - [*] | null | null | null | > | SERVER FILTER BY FIRST KEY ONLY AND C LIKE 'RRS\_%' > | null | null | null | > +----------------------------------------------------------------------------------------+-----------------+----------------+--------------+ > 2 rows selected (0.003 seconds) > {noformat} > I'm trying to poke around in the code to figure out the issue but my > understanding of Phoenix is limited at this point. So creating a bug report > incase someone can figure this out quickly. -- This message was sent by Atlassian Jira (v8.3.4#803005)