You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@phoenix.apache.org by ja...@apache.org on 2017/10/03 22:05:46 UTC

[1/2] phoenix git commit: PHOENIX-4274 Test case for Hint query for index on view does not use include

Repository: phoenix
Updated Branches:
  refs/heads/master 68b5db54d -> f0bc4cdb5


PHOENIX-4274 Test case for Hint query for index on view does not use include


Project: http://git-wip-us.apache.org/repos/asf/phoenix/repo
Commit: http://git-wip-us.apache.org/repos/asf/phoenix/commit/f0bc4cdb
Tree: http://git-wip-us.apache.org/repos/asf/phoenix/tree/f0bc4cdb
Diff: http://git-wip-us.apache.org/repos/asf/phoenix/diff/f0bc4cdb

Branch: refs/heads/master
Commit: f0bc4cdb5bbf96b316c78cc816400b04f63e911b
Parents: 8e91c62
Author: James Taylor <jt...@salesforce.com>
Authored: Tue Oct 3 15:04:30 2017 -0700
Committer: James Taylor <jt...@salesforce.com>
Committed: Tue Oct 3 15:05:36 2017 -0700

----------------------------------------------------------------------
 .../phoenix/end2end/index/ViewIndexIT.java      | 33 +++++++++++++++++++-
 1 file changed, 32 insertions(+), 1 deletion(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/phoenix/blob/f0bc4cdb/phoenix-core/src/it/java/org/apache/phoenix/end2end/index/ViewIndexIT.java
----------------------------------------------------------------------
diff --git a/phoenix-core/src/it/java/org/apache/phoenix/end2end/index/ViewIndexIT.java b/phoenix-core/src/it/java/org/apache/phoenix/end2end/index/ViewIndexIT.java
index 8ea6c27..53bb550 100644
--- a/phoenix-core/src/it/java/org/apache/phoenix/end2end/index/ViewIndexIT.java
+++ b/phoenix-core/src/it/java/org/apache/phoenix/end2end/index/ViewIndexIT.java
@@ -44,7 +44,6 @@ import org.apache.phoenix.jdbc.PhoenixStatement;
 import org.apache.phoenix.query.KeyRange;
 import org.apache.phoenix.query.QueryServices;
 import org.apache.phoenix.schema.PNameFactory;
-import org.apache.phoenix.schema.PTableType;
 import org.apache.phoenix.schema.TableNotFoundException;
 import org.apache.phoenix.util.MetaDataUtil;
 import org.apache.phoenix.util.PhoenixRuntime;
@@ -52,6 +51,7 @@ import org.apache.phoenix.util.PropertiesUtil;
 import org.apache.phoenix.util.QueryUtil;
 import org.apache.phoenix.util.SchemaUtil;
 import org.apache.phoenix.util.TestUtil;
+import org.junit.Ignore;
 import org.junit.Test;
 import org.junit.runner.RunWith;
 import org.junit.runners.Parameterized;
@@ -413,4 +413,35 @@ public class ViewIndexIT extends ParallelStatsDisabledIT {
             conn.close();
         }
     }
+    
+    @Test
+    public void testHintForIndexOnViewWithInclude() throws Exception {
+        testHintForIndexOnView(true);
+    }
+    
+    @Ignore("PHOENIX-4274 Hint query for index on view does not use include")
+    @Test
+    public void testHintForIndexOnViewWithoutInclude() throws Exception {
+        testHintForIndexOnView(false);        
+    }
+    
+    private void testHintForIndexOnView(boolean includeColumns) throws Exception {
+        Properties props = new Properties();
+        Connection conn1 = DriverManager.getConnection(getUrl(), props);
+        conn1.setAutoCommit(true);
+        String tableName=generateUniqueName();
+        String viewName=generateUniqueName();
+        String indexName=generateUniqueName();
+        conn1.createStatement().execute(
+          "CREATE TABLE "+tableName+" (k VARCHAR PRIMARY KEY, v1 VARCHAR, v2 VARCHAR) UPDATE_CACHE_FREQUENCY=1000000");
+        conn1.createStatement().execute("upsert into "+tableName+" values ('row1', 'value1', 'key1')");
+        conn1.createStatement().execute(
+          "CREATE VIEW "+viewName+" (v3 VARCHAR, v4 VARCHAR) AS SELECT * FROM "+tableName+" WHERE v1 = 'value1'");
+        conn1.createStatement().execute("CREATE INDEX " + indexName + " ON " + viewName + "(v3)" + (includeColumns ? " INCLUDE(v4)" : ""));
+        PhoenixStatement stmt = conn1.createStatement().unwrap(PhoenixStatement.class);
+        ResultSet rs = stmt.executeQuery("SELECT /*+ INDEX(" + viewName + " " + indexName + ") */ v1 FROM " + viewName + " WHERE v3 = 'foo' ORDER BY v4");
+        assertFalse(rs.next());
+        assertEquals(indexName, stmt.getQueryPlan().getContext().getCurrentTable().getTable().getName().getString());
+    }
+    
 }


[2/2] phoenix git commit: PHOENIX-4275 Use unique table names for ViewIT

Posted by ja...@apache.org.
PHOENIX-4275 Use unique table names for ViewIT


Project: http://git-wip-us.apache.org/repos/asf/phoenix/repo
Commit: http://git-wip-us.apache.org/repos/asf/phoenix/commit/8e91c62b
Tree: http://git-wip-us.apache.org/repos/asf/phoenix/tree/8e91c62b
Diff: http://git-wip-us.apache.org/repos/asf/phoenix/diff/8e91c62b

Branch: refs/heads/master
Commit: 8e91c62bdde4998896418453d260401224a21f74
Parents: 68b5db5
Author: James Taylor <jt...@salesforce.com>
Authored: Tue Oct 3 15:03:03 2017 -0700
Committer: James Taylor <jt...@salesforce.com>
Committed: Tue Oct 3 15:05:36 2017 -0700

----------------------------------------------------------------------
 .../src/it/java/org/apache/phoenix/end2end/ViewIT.java  | 12 ++++++------
 1 file changed, 6 insertions(+), 6 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/phoenix/blob/8e91c62b/phoenix-core/src/it/java/org/apache/phoenix/end2end/ViewIT.java
----------------------------------------------------------------------
diff --git a/phoenix-core/src/it/java/org/apache/phoenix/end2end/ViewIT.java b/phoenix-core/src/it/java/org/apache/phoenix/end2end/ViewIT.java
index 267dbc9..1953f79 100644
--- a/phoenix-core/src/it/java/org/apache/phoenix/end2end/ViewIT.java
+++ b/phoenix-core/src/it/java/org/apache/phoenix/end2end/ViewIT.java
@@ -701,15 +701,15 @@ public class ViewIT extends BaseViewIT {
       Properties props = new Properties();
       Connection conn1 = DriverManager.getConnection(getUrl(), props);
       conn1.setAutoCommit(true);
-      String TABLE_NAME="UpdateCacheViewTest"+System.currentTimeMillis();
-      String VIEW_NAME="VIEW_"+System.currentTimeMillis();
+      String tableName=generateUniqueName();
+      String viewName=generateUniqueName();
       conn1.createStatement().execute(
-        "CREATE TABLE "+TABLE_NAME+" (k VARCHAR PRIMARY KEY, v1 VARCHAR, v2 VARCHAR) UPDATE_CACHE_FREQUENCY=1000000");
-      conn1.createStatement().execute("upsert into "+TABLE_NAME+" values ('row1', 'value1', 'key1')");
+        "CREATE TABLE "+tableName+" (k VARCHAR PRIMARY KEY, v1 VARCHAR, v2 VARCHAR) UPDATE_CACHE_FREQUENCY=1000000");
+      conn1.createStatement().execute("upsert into "+tableName+" values ('row1', 'value1', 'key1')");
       conn1.createStatement().execute(
-        "CREATE VIEW "+VIEW_NAME+" (v43 VARCHAR) AS SELECT * FROM "+TABLE_NAME+" WHERE v1 = 'value1'");
+        "CREATE VIEW "+viewName+" (v43 VARCHAR) AS SELECT * FROM "+tableName+" WHERE v1 = 'value1'");
       ResultSet rs = conn1.createStatement()
-          .executeQuery("SELECT * FROM "+TABLE_NAME+" WHERE v1 = 'value1'");
+          .executeQuery("SELECT * FROM "+tableName+" WHERE v1 = 'value1'");
       assertTrue(rs.next());
     }