[ 
https://issues.apache.org/jira/browse/PHOENIX-6460?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Swaroopa Kadam updated PHOENIX-6460:
------------------------------------
    Description: 
In QueryOptimizerTest, following test fails, as it uses IDX over view

 
{code:java}
@Test
 public void testChooseIndexOverTable_diffOrder() throws Exception
{ 
Connection conn = DriverManager.getConnection(getUrl());
 conn.createStatement().execute("CREATE TABLE t (k INTEGER NOT NULL, v1 VARCHAR 
NOT NULL, v2 VARCHAR CONSTRAINT" + " PK PRIMARY KEY (k, v1)) 
IMMUTABLE_ROWS=true"); conn.createStatement().execute("CREATE VIEW v(v4 
VARCHAR) AS SELECT * FROM t"); conn.createStatement().execute("CREATE INDEX idx 
ON v(v1 DESC) INCLUDE (v4)");
 PhoenixStatement stmt = conn.createStatement().unwrap(PhoenixStatement.class);
 QueryPlan plan = stmt.optimizeQuery("SELECT v1 FROM v ORDER BY v1");
 assertEquals("V", plan.getTableRef().getTable().getTableName().getString());
 }
{code}
 

  was:
In QueryOptimizerTest, following test fails, as it uses IDX over view

@Test
public void testChooseIndexOverTable_diffOrder() throws Exception {
 Connection conn = DriverManager.getConnection(getUrl());
 conn.createStatement().execute("CREATE TABLE t (k INTEGER NOT NULL, v1 VARCHAR 
NOT NULL, v2 VARCHAR CONSTRAINT"
 + " PK PRIMARY KEY (k, v1)) IMMUTABLE_ROWS=true");
 conn.createStatement().execute("CREATE VIEW v(v4 VARCHAR) AS SELECT * FROM t");

 conn.createStatement().execute("CREATE INDEX idx ON v(v1 DESC) INCLUDE (v4)");
 PhoenixStatement stmt = conn.createStatement().unwrap(PhoenixStatement.class);
 QueryPlan plan = stmt.optimizeQuery("SELECT v1 FROM v ORDER BY v1");
 assertEquals("V", plan.getTableRef().getTable().getTableName().getString());
}


> Improve the optimizer to consider all plans and prefer regular over reverse 
> scans
> ---------------------------------------------------------------------------------
>
>                 Key: PHOENIX-6460
>                 URL: https://issues.apache.org/jira/browse/PHOENIX-6460
>             Project: Phoenix
>          Issue Type: Improvement
>            Reporter: Swaroopa Kadam
>            Priority: Major
>             Fix For: 5.1.1, 4.17.0
>
>
> In QueryOptimizerTest, following test fails, as it uses IDX over view
>  
> {code:java}
> @Test
>  public void testChooseIndexOverTable_diffOrder() throws Exception
> { 
> Connection conn = DriverManager.getConnection(getUrl());
>  conn.createStatement().execute("CREATE TABLE t (k INTEGER NOT NULL, v1 
> VARCHAR NOT NULL, v2 VARCHAR CONSTRAINT" + " PK PRIMARY KEY (k, v1)) 
> IMMUTABLE_ROWS=true"); conn.createStatement().execute("CREATE VIEW v(v4 
> VARCHAR) AS SELECT * FROM t"); conn.createStatement().execute("CREATE INDEX 
> idx ON v(v1 DESC) INCLUDE (v4)");
>  PhoenixStatement stmt = 
> conn.createStatement().unwrap(PhoenixStatement.class);
>  QueryPlan plan = stmt.optimizeQuery("SELECT v1 FROM v ORDER BY v1");
>  assertEquals("V", plan.getTableRef().getTable().getTableName().getString());
>  }
> {code}
>  



--
This message was sent by Atlassian Jira
(v8.3.4#803005)

Reply via email to