You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@phoenix.apache.org by "Samarth Jain (JIRA)" <ji...@apache.org> on 2016/04/20 03:20:25 UTC

[jira] [Created] (PHOENIX-2844) ORDER BY doesn't seem consistent

Samarth Jain created PHOENIX-2844:
-------------------------------------

             Summary: ORDER BY doesn't seem consistent
                 Key: PHOENIX-2844
                 URL: https://issues.apache.org/jira/browse/PHOENIX-2844
             Project: Phoenix
          Issue Type: Bug
            Reporter: Samarth Jain


{code}
@Test
  public void testDescOnSecondRowKeyColumnWithWhereExpressionUsingFirstRowKeyColumn() throws SQLException {
      Connection conn = DriverManager.getConnection(getUrl());
      conn.createStatement().execute("CREATE TABLE t (k1 VARCHAR NOT NULL, k2 DATE NOT NULL, k3 VARCHAR NOT NULL, V1 VARCHAR CONSTRAINT pk PRIMARY KEY (k1, k2, k3))");
      PhoenixStatement stmt = conn.createStatement().unwrap(PhoenixStatement.class);
      
      String query = "select * from t where k1 < 'X' order by k2 desc";
      QueryPlan plan = stmt.optimizeQuery(query);
      assertFalse(plan.getOrderBy().getOrderByExpressions().isEmpty());
      
      
      query = "select * from t where k1 > 'X' order by k2 desc";
      plan = stmt.optimizeQuery(query);
      assertFalse(plan.getOrderBy().getOrderByExpressions().isEmpty());
      
      query = "select * from t where k1 = 'X' order by k2 desc";
      plan = stmt.optimizeQuery(query);
      assertFalse(plan.getOrderBy().getOrderByExpressions().isEmpty());
      assertTrue(plan.getContext().getScan().isReversed());
  
  }
{code}

Because the rows we are looking at are already limited by the filter on the first row key column, I would expect that the order by desc on second row key column would result in plan.getOrderBy().getOrderByExpressions().isEmpty() to be empty always. 

[~jamestaylor] - WDYT? 

This behavior is apparently causing a test failure in ProductMetricsIT#testSaltedOrderBy for my patch in PHOENIX-2724. I think that patch is surfacing this bug.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)